Regarding the Rhine-Tour:
I'd take the train to Bingen (you might have to change trains in Mainz) and take the ship from there up, since the Frankfurt/Mainz - Bingen part is not that interesting, the nice part starts right after Bingen.
Depending on your preferences, you might take the boat to St. Goar and visit
Burg Rheinfels. On the way back you could take the train and stop in Bacharach along the way back, a very nice little town with a lot of old houses etc.
Another place to stop is Mainz, with its cathedral, Gutenberg museum and a lot of roman stuff around - but hey, I'm biased, I'm from here

.
One more option would be on the way back to get off the train in Bingen, take the ferry accross the Rhine to Ruedesheim and go up to the Germania (a statue overlooking the Rhine). If the weather is nice, you have a beautiful view from there. Then you can take the train from Ruedesheim back to Frankfurt via Wiesbaden.
If you want more information, feel free to ask here or by PM.
David