Miami International (MIA) is the main (and closest) airport for Miami. When you do online searches often you will see flights to Fort Lauderdale (FLL) and West Palm (PBI). Those airports are little further away, but still service the Port of Miami. Transportation is readily available (and very reasonable -$17 pp) from FLL to Miami - so if the price is less - use that airport.
As far as hotels, Raoul has already suggested anything near Bayside Marketplace and that is about as close as you are going to get to the Port of Miami. If you are looking for something reasonably priced in a great location there - check out the Holiday Inn - Port of Miami on Bayside. But, there are also hotels near the airport that offer free shuttle service to the port.
Hope this helps -