We went to Cozumel in December and snorkeled at the Palacar Reef, it was about 3 -4 hours long, it was wonderful!, and it gave us sometime afterwards to go shopping and eat at a Pncho's Backyard, that was our third time eating there. We never swam with the Dolphins because of the expense and we heard that you really don't get to interact with them the way you may like.
A year before that we went on another snorkeling trip which was kinda for the beginners, we did that because our kids were with. After we snorkeled they took us to a private beach to use kayaks, play volleyball and etc. Palacar reef is eay enough though that kids can do it, you basically float and let the current take you.