If you're both strong swimmers I think you can get some of the best snorkeling at The Baths. The trick is swimming out and around the boulders into deeper water. The busier beach areas are full of tourists and not as much marine life. Last time I was there myself and a friend hiked through the boulder trail from one beach to another, got in the water and swam back. It's also a bucket list stop in the BVI for general beauty of the scenery. The downside here is it's a long way from St. Thomas.
Norman Island caves. On the western side of the island, the outer side of the island from The Bight Bay, there are several caves and some good snorkeling. Afterward you can head to the Willy T, drink rum, get naked and jump off the top of the bar into the water. This isn't a super far trip.
The Indians. You'll need a boat to take you here and pick up a mooring to snorkel or dive. If all the moorings are taken you can pick one up at Pelican Island. It's a pretty far swim over to the indians from here and the current can be fairly strong. There are some cool underwater rock and coral formations.
Not a day trip but Anegada has some awesome snorkeling.