Best from San Pedro would be to fly nonstop to Corozal Town (four or five flights a day each on Tropic and Maya Island), then bus or take a transfer across the border, and bus to Cancun. You could also water taxi to Corozal Town.
Short, I don't think there's scheduled service any longer between Cancun and Chetumal. (Except via Mexico City, very expensive and time-consuming.) Alma de Mexico discontinued its service about four or five months ago.
You could do a charter, though.