We have a child with Autism that has a very limited number of things he will eat.
What we do is plan our day around his needs.
If we are going to Cozumel and have an early port arrival...we eat a big breakfast ....get off the ship around 9AM and then are back on the ship around 1pm to eat lunch.
We have been cruising for years.....and while every country has their own restrictions and their own consequences for breaking those restrictions....
we have found that most ports do not allow "raw" foods. (sandwiches, fruit etc) For example, Cozumel does not because they are trying to stop the Red Palm Mite from getting on their island. Now I don't know what a Red Palm Mite is....but as a guest in their country, I certainly want to behave accordingly and not do anything that may cause damage to their country. And while a lot of it gets caught and taken from the passengers before they get off the ship....a lot makes it through. But honestly, it just isn't something that people with class do.
BUT .... all of them DO ALLOW PREPACKAGED FOODS!!!! That is the key to our traveling with our son. We bring prepackaged nabs like peanut butter crackers, chips, candy bars...there are a whole host of prepackaged foods available.
Now about the water....all the major restaurants in Cozumel use purified water. We go to Cozumel about 5 times a year and I have had more than I share of drinks and food there without an issue. So the drinks and ICE are FINE!!!
Just do not drink from public water fountains and I would not eat salads or fruits from there.
AND you do not have to worry about your food spoiling or hauling ice chests.....
Hope you have a great day in Cozumel....