There's no place in Belize City to snorkel.
One option: To get to San Pedro in time for mass and then to snorkel, you'd have to fly. Muncipal airport is just a short cab ride away from the cruise ship terminal. There, for around US$50 per person round-trip, you can fly (about 20 minutes) to San Pedro on Maya Island or Tropic Air, walk down to the downtown Catholic church for mass and then take a boat out to Hol Chan (around US$20 per person). It would be hectic and fairly expensive but possible.
Another option, cheaper, is to go to mass in Belize City and then do a snorkel tour from Belize City later in the morning. Hugh Parkey's Dive Belize is the quality operation in Belize City, but I don't know what his schedule is for cruise ship snorkel tours. Hugh's trip or another one can I'm sure be arranged through your ship.
Belize First http://www.belizefirst.com/