the best place on 7 mile is the Royal Palm Beach club, it has food,drinks and showers. I don't think any part of 7 mile is great for snorkeling, but it is a wonderful beach. Do it first, then stop at Margaritaville on the way back. They just finished the new one my last cruise and it has a swimming pool and slide right in the middle of the bar(kidos loved it).
However if it is your first time to GC, then do stingray city it is a must.....