I would not stay at the airport are much nicer to stay downtown unless you are arriving late at night then the airport hotels would be fine
Depends on your budget
We like the Hampton Inn Brickell but no airport shuttle
They did have a shuttle to the port for a fee but a taxi or Uber works out about the same
Check the Florida departures forum many options