The major cruise lines rarely do overnight stops in the Caribbean. Some smaller cruise lines like Oceania and some of the luxury lines like Seabourn occasionally will have an overnight. The major cruise lines lose a lot of onboard revenue if they stay in port overnight. The shops and casino are closed and there aren't too many night time shore excursions.
Celebrity has a drink package and Carnival is "testing" one on select ships and itineraries.
Almost all of the cruise lines have in cabin bar setup where you can pre-purchase bottles of liquor and have them waiting for you in your cabin. The prices range anywhere from $40/bottle to over $100/bottle, depending on the cruise line and the type of liquor.
Many cruise lines do have overnights on their European, South American and Asian itineraries.