Upvote:2
My suggestion would be to book an hotel for the night where you arrive and ask for a late check out. This way, you could leave the hotel around 2-3 PM to be ready for your next flight. You could find cheap hotels in the airport area (starting 50 € / night). This is expensive if this is just for a shower but you could also relax around the pool after that.
Then the airport has a page where you can read what to do during a layover : http://www.miami-airport.com/what_to_do_during_layovers.asp
Upvote:2
Not necessarily cheap but “day room” or “day use room” are a thing. Sometimes it's with something else in mind but around an airport, it would not raise any eyebrows. It should at least be cheaper than booking a room for the night (let alone two!) and hoping a booking for the previous night would allow you to stay that late in the afternoon. One downside is that you might need to wait a bit before checking in (it's most profitable for the hotel if sell all rooms for the night and then sell them again for day use so they might not have anything available at 5 AM).
A quick google search suggests the Hilton offers this for example but I am sure there must be others.
Alternatively, you could also consider using an airport lounge, as suggested by @blackbird. They are typically opened to frequent flyers or business and first class passengers but if that's not your case, it's often possible to simply pay to access the lounge. It might seem a bit pricey for what you get but still cheaper than one or two hotel nights (a one-day pass for “Admirals Club” lounges is $59). Most have showers, a quiet space to have a nap (not necessarily a proper bed however), snacks or beverages.