There is diving in Costa Maya, well actually it is in the small town of Mahahaul just to the south of the cruiseline built port facilities of Costa Maya, which is not much more than a strip mall with "duty free" stores and t-shirt shops IMHO.
In addition to diving in Cozumel, I would dive Grand Cayman. I used
www.neptunesdivers.com in March and can recommend them as being quite cruiser friendly. 8 divers max on their boat.
The diving in Belize can be really good too, but is more costly and takes the whole day because of the distance from where the ship anchors to where the good diving is. This is one of the few ports where I would use the ships excursion just because the planning/ logistics is some much easier.