You have gotten some good info here and I do as you are thinking of, and that is eating a large meal on board the ship before getting off in the port. The one thing I carry with me in my port bag is a protein bar. They do allow that and I have something if I need it. But, I have also eaten in Mexican restaraunts with no problems. BUT, only if it was on a tour through the cruise line, as they are concerned that if passengers get sick, it's bad for the line. Or, if I did decide to eat on my own, I would choose either an American based chain or a restaraunt that is air conditioned. If the owners can afford A/C, they probably have refridgeration as well. And no water from their tap systems. Bottled everything. By the way, Mexico produces CocaCola with sugar and, while the not the original, drug based recipe, it is the one that was changed several decades ago here. Tastes like childhood...yummy. And I don't drink soda's.
Last, a chef that I knew who worked the cruise lines said the safest thing to eat if you are really stuck is fish, because if it goes bad, it smells bad. Beef and pork take a longer time to go back, but the riskiest is chicken, as it can be bad and still smell and taste fine.
Last, but not least, a few years ago, I almost died from a form of food poisoning that dissolves your intestines. Got it from a Mexican restaraunt...here in Florida! :evil: