A few questions as there are many hotels in the area.
Does he want to stay in the city or further out? Generally, the hotels in the city are pricey, but the main attractions are in walking distance. Also, how much time will he be spending here? Just one night (that is, just a place to sleep) or for a few nights to explore the area. Finally, is he driving or flying? Driving would give him the flexibility to stay outside of the city (for lower hotel costs), while flying would suggest that he should stay within Boston as the airport is close to the cruise terminal. And, there is no need to rent a car while in Boston, which may make the hotel prices easier to swallow.
If $ isn't an issue, and he wants to be near the cruise terminal, have him look at the Seaport or Innovation Districts of Boston. Some luxury hotels have sprung up there in recent years.
If he wants to be near tourist sites (and, again, if $ isn't an issue), look for hotels located in Boston's Back Bay or Downtown (Quincy Market -- but NOT Quincy, Massachusetts as that is an entirely different city). Note that some hotels that use "Boston" as part of their name are located a distance from the city.
I not sure money is a BIG issue but I think he would rather have money to spend on the cruise than use it on the hotel. It is just for the night before the cruise and just a place to sleep I think. Somewhere near the cruise terminal (or at least not on the other side of town) would be preferable.
They are not driving in, do you know of any that offer a cruise shuttle?
That's a decent choice. If it's the one I'm thinking of (on Boston Street), it's a quick ride from the airport and then to the terminal, although there's not much to do around there. Yet, as it's just to sleep, it should be OK. The one on Friend Street is nothing special, yet it's in a great location.