We flew into Houston the day before and stayed at an airport hotel (I think it was Hampton Inn) with a free shuttle to and from the airport. The morning of the cruise we took the hotel shuttle back to the airport and took the Carnival transfer.
It worked well for us

.