Hi OldNSalty, welcome to CruiseReviews. Most all of the diving tours will go to stops that you can snorkel. In Belize, we did a snorkel of the reef. They picked us up at the ship, took us to the reef, then took us to a private island. I don't remember if they had a diving tour there, but the reef is definitely shallow enough to snorkel and where we anchored was probably about 30' deep. You don't dock in Belize, they anchor there and have tenders that take you to the city or on your excursions.
In Roatan, you will probably dock at Mahogany Bay, unless it's too windy for them to port. Then they'll dock at Coxen Hole. Mahogany Bay has a nice beach area where you can snorkel, but no diving equipment to rent that I saw. I only saw snorkeling equipment.
If you're going to Cozumel, too, there are some dive shops close to the port. I have done a beach dive in Cozumel, but that was years ago and it was through the ship. Sorry, I don't remember the outfit that did it.
I really believe your best bet would be to book the diving excursion. I'm sure they'd be able to snorkel the area. You might check with shoretrips.com and see if they offer anything in those ports. Just be sure to leave enough time to get back to the ship.