One of my favorite places in Cuba is Punta Perdiz. It’s located on the south cost of Cuba, in the Matanzas Province, between Playa Larga and Playa Girón. It’s only 150 km from Havana and the road to get there is quite good, so you could do a full day excursion from Havana, if you don’t have time for a longer stay.
Alongside the coast between Playa Larga and Playa Girón one can find small places to stop with the car and just go for a snorkling session in pristine and virgen surroundings. The reef is located from 30 to 100 meter from the shore and the water is cristal clear.
At Punta Perdiz itself you will find a diving center and a restaurant and there is a entrance fee of 15 cuc that allows you to stay the whole day with lunch included.
If you have some time to spend I suggest to spend a couple of days in a Casa Particular at Playa Buenaventura or at Hotel Playa Larga, One entrance to the Cienaga de Zapata is located just by the Playa Buenaventura and there are a lot of casa particulares just on the beach.
Don’t miss Cueva de los Peces and Caleta Buena in the same area.