I've snorkeled at Cozumel and loved it! I've been to Belize but we didn't snorkel. I've recently read a thread which you might be able to find under a search. But one was talking about his bad experience of snorkeling. The waters were very rough, water was murky from what I remember. He said this wasn't the place for it.
In Belize I would NOT do an excursion that wasn't booked through the cruiseline. Not many ports I would say that about. Don't adventure on your own either!
Cozumel you will love and feel very comfortable there.
I have snorkeled at Cozumel four times. We usually take a cab to a resort called Dzu-Ha( pronounced Shu). There is no charge to stay at this resort. Understanding that they are in business, we always rent a locker and buy a few cokes. Dzu-Ha has some wonderful snorkeling. Many of the tours come to Dzu-Ha and enter the water from that facility. In addition, many of the motorboat tours stop at Dzu-Ha.
Our last time in Cozumel was with a Princess Cruise. I spoke to one individual who informed me that he snorkeled at a hotel within walking distance of our ship which was docked at the international pier. He stated his snorkeling experience was outstanding.
I initially learned of snorkeling opportunities from books I obtained at my local library. There are different places one can snorkel from the shore at Cozumel.
If you do not own your own gear, I would encourage you to purchase it. A good mask and snorkel can be obtained for less than 50 dollars. I am always amused by those who spend thousands of dollars on their cruise, but won't spend the few dollars to purchase really good gear to enhance their snorkeling experience. Having rented masks that leaked all the time, it was a pleasure to own my own mask that did not have to be constantly removed all the time. Have a good trip
After searching on the Internet, I found that it is spelled Dzul Ha, not Dzu Ha, and Xel Ha is closer to Cancun than Cozumel. Xel Ha is a recreational park (not a theme park like Disney) and has good snorkeling along with dolphin swims.