We stayed at the County Inn's and Suites by the Newark Airport. Very nice, very clean. Try to get a room on the far side from the airport, it's not noisy over there. It only took us about 20 minutes to get to the port, it would have taken 5 if there wasn't traffic.
Any hotel around Newark Airport will put you a short distance from the port.
Crown Princess March 2017
Explorer of the Seas October 2013
Caribbean Princess July 2006, May 2010 & November 2012
Monarch of the Seas November 2008
Crown Princess November 2007
Celebrity Zenith November 2005
Enchantment of the Seas August 2004
Bayonne is between Newark & East Rutherford (the town where Giants Stadium is located). It's in north eastern NJ.
You have to define "nice hotel" a little more specifically. There are a variety of clean, safe hotels near Newark AP (which is actually in Elizabeth) all priced around $65-80 per night if you book early. There are some more expensive hotels in the area too. I understand there is a new Hyatt in Jersey City; that may be an option. I don't have any pricing info. There are also nice hotels near the Meadowlands but they are a bit pricier. If you are really looking to splurge, you may want to try something in NYC, but that will be expensive. NYC is less than 1/2 hour away from the port.