I totally get what you’re saying. I won’t go on a cruise that stops in Jamaica. Been there twice. Both times people were pushy and rude, in your face with their hands out for a tip for any reason they could think of. Poor area, yeah,I get it. But the Dominican Republic has possibly more poverty yet the people are warm and friendly. This is MY experience and therefore, I don’t choose to spend MY money there . Other people love Jamaica. Yippee skippy for them! Have at it!
OP, as for Mexico, I would suggest just staying on the ship if it makes any of you uncomfortable. Perhaps your wife would be more relaxed if you only do ship sponsored excursions. (I used to not like Ensenada at all but after doing the winery tour one trip, now I get off the ship there and leave the city.) Only you can decide what’s best for your family. Have fun whatever you decide.