I've had good, simple meals at Laguna de Bacalar on the town square, and great dinners at the more upscale Los Aluxes (tel. 983/152-5608; www.bacalarlagunazul.com) on Avenida Costera, south of Amigos B&B. Restaurante Cenote Azul (tel. 983/834-2460; www.cenoteazul.com), with its vantage point overlooking the cenote, wouldn't even have to serve decent food to attract a following, but it does, and with great variety. While you're there, you can swim in the cenote (as long as you aren't wearing lotions or deodorant), or simply watch others take the plunge.
Note: This information was accurate when it was published, but can change without notice. Please be sure to confirm all rates and details directly with the companies in question before planning your trip.