1. Worth is subjective. I personally found them not to be worth it, especially considering your entrance ticket doesn't cover a lot of activities that they offer.
2. People rave about the Night Show at XCaret.
3. I only remember snorkeling through an underground river at Xcaret. It lasts for like 15-30 minutes depending on how fast you swim and you don't see any fish until you reach the end. I'd go with the charter boat if you want to snorkel.