A note on German train booking, if for some reason you are not using rail&fly (whose availability and price is dependent on the flight carrier you choose): you get two prices for each train, "fixed" and "flexible". Fixed (which is a condition of almost everything offered as "savings fare") means that you are buying a ticket for a given train and if you miss that train for whatever reason (except by fault of the Deutsche Bahn itself) you have to buy a new ticket to travel later. The Flexiticket is valid for any train travelling that day, and in connection of the uncertainty of intercontinental flights and the stress of long travel to an unfamiliar destination, I would consider it money well invested.
As for booking from home, you can buy the train ticket under bahn.de, payment by credit card is accepted, and you are obliged to carry with you a printout of the ticket. As said above, compare prices with Rail and Fly first - it seems that you will be paying around 40 Euros from Frankfurt with the ICE. This is the price for one direction, you don't get discounts for booking the return journey at the same time.
For the preferred order of airports: the other answers already explained why Frankfurt is by far the best choice. If for some reason you want to compare to second-best alternatives, then Stuttgart (1-2h), Strasbourg (1-2h), Paris (2-3h) and Zürich (3-4h) would come into consideration, in order of reduced time spent on board of a train. For basically all of those, you can find connections with only one layover somewhere other than Frankfurt, so if the options you have through Frankfurt are very inconvenient for you, you can shop around to see what happens if you fly to one of those. Smaller airports which are physically closer are unlikely to be a better choice because of more layovers or worse train connection.