I'm hesitant on Marksburg because maybe the kids might get bored w/ another tour
You know your kids better than I do, but the castles themselves are quite different. Eltz: certain rooms with lavishly furnished interiors from later periods, somewhat more museum-like. Marksburg: much more medieval in feel... more like the prototype castle that 7th-graders are assigned to replicate with sugar cubes, heh heh.
Bacharach's half timbered buildings are much nicer on than those in St Goar.
It is possible to include Bacharach and Marksburg with a cruise stopover in Bacharach and zero ferry crossings...
- 9 am cruise from Rüdesheim > Bacharach (10:00.)
- 12 am cruise from Bacharach > St Goarshausen (12:50.)
- Direct train to Braubach (Marksburg), 22 minutes: 13:02, 13:32, 14:32 options from St. G'hausen. Lunch in St Goarshausen or better yet in Braubach.
- Direct train back to Rüdesheim after your tour
OTOH Braubach isn't only about Marksburg Castle... like Bacharach, it is full of very nice old-world buildings, a "back-door" gem, as Rick Steves might call it, and thus an excellent subsititute. So you may want to just forget the stopover in Bacharach and stay on that 9:00 boat to St Goarshausen.... then catch an earlier train to Braubach for lunch and a stroll there. All the same route, still zero ferry crossings. You can preview Braubach's fine buildinng through the 3 pages of photographs below:
https://www.stadtbild-deutschland.org/forum/index.php?thread/7322-braubach-am-rhein-und-marksburg-galerie/
There are a couple of Braubach restaurants that will feed you lunch on the cobblestoned Marktplatz:
https://farm5.staticflickr.com/4143/4751924826_98980aa49f_o.jpg
Alternatively, if you're set on NOT going to Marksburg/Braubach, you can do as you suggested... do the standard cruise to St Goar + train to Boppard/chairlift + train to Bacharach + ferry crossing back to Rüdesheim (I think that's what you suggested.)
(Keep in mind that Rüdesheim has its own cable car lift, and the walking from the top of it is pretty nice too.)