It depends on what you consider "affordable, " and also what non-diving activities you're interested in. Not knowing that info, I'd say that for a diver and non-diver, good choices are BVI, St Lucia, Curacao and Akumal.
Akumal is one of my personal favorites and we go there a couple times a year. Akumal doesn't have any huge resorts, but there are several nice condos to rent at reasonable prices on Half Moon Bay. There are also some really nice villas, but they will cost you more. Akumal has a quiet, relaxed atmosphere. There are only 6 restaurants but you can eat right on the beach (La Lunita is very romantic), have a fun happy hour at a bar with swings for stools and crows nests overlooking the bay (La Buena Vida), have homemade pasta in a garden (Que Onda), gourmet dinner by fairy lights and candles (Turtle Bay Cafe), or a dinner for two under the stars on the beach by torch light, completely away from anyone else (Lol Ha offers a romantic dinner on the beach for two). And you can go anywhere in shorts and t-shirt. No dressy clothes required. The reef diving in Akumal is nice. Not spectacular but enjoyable. You can also take a trip over to Coz for a day or even better, stay there for a couple nights and enjoy some great reef and wall dives. Cozumel Palace is walking distance to town AND you have a jacuzzi in your room and hammock on the balcony

Above water in Akumal you have the beach, Myan Ruins (Tulum and Coba) are easy day trips, Eco parks (Xel Ha and Xcaret), more restaurants, shopping and nightlife less the half hr away in Playa del Carmen, and of course, a dive or snorkel in the cenotes. We love Cozumel too, but we both dive. I don't think I would enjoy it as much if I wasn't diving from 8am - 2pm.