Welcome to cruise-chat!
As for your question. On my second cruise I went to Cozumel. I always felt completely safe there. Everyone kept their distance:
- no pushy street vendors
- no beggers
- no scary looking people-->
It was very nice as a result. I hope to go back soon.
Not that I would completely drop my guard while there. But I did see both young and old walking the streets un-bothered. Since Cozumel is an island seperated from the mainland, I think that adds to it's safety.
Most people in the important places in Cozumel (big stores, big bars, information centers) spoke English. THere were a few times when I encountered a cab driver or a person in a small store that only spoke Spanish. However, I did not have much of a problem with a language barier (even if I couldn't speak Spanish; which I can do with some limitations).
Cozumel is the only place in Mexico I have been to so far. So I can't speak for other Mexican cities in terms of safety.
Also, the US Dollar is accepted in Cozumel. I was worried that I should exchange my dollars into Pesos before getting there; but did not have to.