There is a Hilton Garden Inn on site (near the long-distance train station). Don't know if they do free breakfast as it's a few years since I stayed there.
Don't know if there are off-site hotels with shuttles - but if you don't want to stay on-site your best bet is probably to take a train into town and stay at one of the hotels near the Central Train Station. That's bound to be quicker than a shuttle fighting its way through traffic.
I don't know if "free breakfast" is even a thing in Germany...
Motel One Frankfurt Airport has cheap (but nice) rooms, cheap breakfast and a shuttle service to the Terminals.
"I don't know if "free breakfast" is even a thing in Germany..."
Once upon a time free breakfast was the norm in Germany - having to pay extra for breakfast is a relatively recent thing (recent by my standards), probably imported from North America.
Small family-run hotels still tend to operate on a bed-and-breakfast basis, but I doubt you'll find many of those near a major international airport.
America still has plenty of cheap motels and Best Western-like hotels who offer free breakfast, so I would have thought it was the other way around.
Anyway, Motel One for instance has (a decent) German breakfast for less than €10, I think. That is relatively cheap for a hotel breakfast.
"Zimmer mit Frühstück" was definitely the norm in Germany until about 20 years ago.... and is still, in my experience, the norm in small non-chain hotels.
I remember being surprised the first time I came across a German hotel that charged separately for breakfast.
Breakfast or shuttles are never free. They are either included in the room prices - or not. Not including them has advantages when guests using booking portals in the internet and listing the hotels by room price.
There are 3 hotels directly at the terminals, the already mentioned Hilton Garden Inn is the cheapest among them.
From Frankfurt Airport you need only 11 min by S-Bahn trains to the Hauptbahnhof (central train station) and 15 min to the Hauptwache (the very center of the city). Areas with many hotels around. And there it is also no problem to skip the hotel breakfast and use cheaper alternatives offered by many bakeries and cafes (at least if you can live with a German style breakfast). Single trip ticket from the airport to anywhere in Frankfurt is EUR 4,80.
The "Airport" Hotels offering shuttle buses are often more distant (at least in travel time). And the shuttles are also mostly less frequent and more prone to traffic problems than the S-Bahn trains.
Right next to Frankfurt Airport (the biggest airport in Germany) there is the Frankfurter Kreuz autobahn interchange (the busiest interchange in the EU).
The Excelsior hotel and Hotel Monopol located next to the main train station (south exit) offer free breakfast as well as a free mini-bar, a cake/coffee stand in the lobby and free wifi.
Take the train into the city. They run every 15 min. and it takes 11 min. to get there from the airport. Cost is 4.80€ p.p. Some of the hotel shuttles cost more than that and you will find yourself waiting a lot longer on them then that train ride would be.