I like the Rhine very much, and have stayed there often, but I think based on what you've said above that Cochem is your best choice. Cochem is closest to Burg Eltz (remember, no luggage storage at the Burg Eltz stop, Moselkern, so close is good.) It's also closest to Trier, if that's a place you want to visit (very worthwhile.) It has the best train connections along the Mosel. Cochem has many sleeping and dining options. It has its own castle with tour (Reichsburg, towering over the town and with an excellent falconry exhibition.) And Cochem is consumately adorable and more scenically located. Bacharach is pleasant but besides rooms and restaurants there isn't much going on in town; in Cochem there are plenty of small diversions.
Here's how to get to Eltz, wherever you stay:
Here is a list of Rhine/Mosel accommodations with reviews, including several inexpensive places in Cochem.
I was at Frau Hilken's place at Löhrstrasse 20 this summer - lovely little 3-bedroom B&B just down the street from the Zum Fröhlichen Weinberg mentioned at the above site. About 20 Euros/person.
Trier is only one possible outing from Cochem; there's also a 1-hour boat ride you can take to pretty Beilstein, and Bernkastel (train to bus connection in Wittlich) is delightful too:
The best castle tour on the Rhine is Marksburg in Braubach on the east bank (connect via train in Koblenz):
You'll need to leave a little earlier from Cochem to reach FRA on your last day than you would from Koblenz, of course. It's about 2 hours with the fastest connections, 1.25 hours from Koblenz. Bacharach, though geographically closer than Koblenz, will cost you 1.50 hours to FRA anyway because of the train connections you must make.