Hard Rock hotel is on a stretch of beach with no public access, the nearest is 3 miles south (next to Ocean Blue & Sand resort) and you need a car to reach it. You can not enter the casino from the beach anyway, only from the main entrance.
To meet your criteria you need to look at Cortecito or Los Corales - both about a 20-25 minute taxi ride from Hard Rock Hotel. However there is no good snorkeling there.
map of Cortecito showing small hotels and some condos (red beach umbrellas = public access points)
Cortecito Inn (no.3 on that map) is well located tel: +1 809 552 0639 email:
info@cortecitoinnhotel.com (website no longer working).
You might find a deal at one of the older, less luxurious AIs in the area - Carabela Bavaro Beach or Barcelo Dominican Beach.
map of Los Corales
Half decent snorkeling can be found in Cabeza de Toro (35 mins taxi ride from Hard Rock) but there the only accomodation in your price range is Hotel Naragua 40$US per night +1 809 468 3060 (no website). Also the area is very limited restaurant wise.
good luck with your search!