From Playa del Carmen it's a little over 4 hours by bus to Chetumal, and about 5 from Cancun. ADO and a couple of other lines runs first-class buses on this route. They're comfortable, with reserved seats, A/C, videos, a bathroom. US$15 to $20. At Chetumal, you can either switch to a Novelo's bus which will take you across the border and after a stop in Corozal Town will drop you at the Coro airstrip ($1.50 as I recall) or you could taxi all the way (US$25 or so, probably). Fly from Coro to San Pedro for Us$35. You could also take the water taxi but you'd have to stay overnight.