Not the reason.
Alcohol is easily available all over the place. Bars, grocery stores, liquor stores, restaurants.
But only from retailers who have purchased their supplies from Texas distributors.
That means cruise ships while in Texas waters can only sell alcohol purchased from Texas distributors. Applies to beer, wine, liquor.
Not sure how the law applies to alcohol service on airplanes flying over Texas.