We head out of PHL to the Caribbean for a sun/snorkeling vacation just about every year, and have been doing so for decades.
Grand Cayman is great. Snorkeling right off the beach at the Westin or the Marriott. (Marriott snorkeling might be a bit better , but the beach is terrible/almost non-existent, whereas the Westin has the best beach on 7 mile beach, IMO.) We've been to the Westin 7-8 times. Our kids have loved Stingray City each time they have gone.
Secret harbour on St. Thomas has great snorkeling, is not all-inclusive, but you could just eat at their restaurants every day.
On the more expensive side, Caneel Bay on St. John has great snorkeling right off several of its beaches. And there are lots of other places to snorkel on St. John. You can get Caneel with meal plan.
Enjoy.