From at least one authority on the topic:
Whether clocks stay set on "ship" time or are changed as the vessel
moves through time zones depends on the ship, the itinerary, and the
time of year
so it'll depend on the company you use, and the zone of the ship and where it travels during the tour.
Most ships adhere to the time zone they are in and clocks are set
forward or back to adhere to local time. Passengers are also advised
to change their watches to the 'correct' time—there is usually a
reminder card on your pillow before you go to bed. However, not all
ships do that, particularly in the Caribbean! Some ships stay on
"ship" time, which can be different from "island" time.
So the best authority is the ship itself, and they'll know from experience that people get it wrong, and will do their best to ensure you don't miss the boat.
From friends who have travelled on a cruise ship in the Mediterranean, breakfast and lunch could be literally 'whenever we wanted' - there was often a buffet.
Disney, for example has seating times for dinner that you can request, and for breakfast, say, on their ship The Wonder:
Breakfast times vary daily, so please check the Personal Navigator—the
Disney Cruise Line daily newsletter detailing all there is to see and
do—for specific dates and times while onboard.
So yes, times can change, and meal times can change accordingly as well, so in the end you'll have to check with your operator and whether they have any special time-operations on the ship you're travelling on.