We can also get cheaper flights to Cancun than to Belize City. We have made the bus trip MANY times. There are actually quite a few options and most depend on what time you arrive in Cancun. Here is the link to the bus service in Mexico. The 1st class bus is ADO. https://www.ticketbus.com.mx/ticketbus/eng/index.jsp
The trip from Cancun to Chetumal takes about 5 hours or so. We use a transfer service that is based in Corozal for the transport from Chetumal to the Corozal airport.
The link to their site is: www.gettransfers.com
Like I said a lot depends on what time you arrive in Cancun. The last flight from Corozal to San Pedro is 5:30 p.m, so you have to determine if you can make it to Corozal for the last flight after the bus ride from Cancun or if you should stay someone along the route and pickup again in the morning.
The other option is to have the people with the transfer service pick up directly at the Cancun airport (kind of expensive, but if there are enough of you in the party to split the cost it is not bad). They can get you to Corozal a lot faster than the bus. We have done it both ways, depends on if you have an extra day at each end of your vacation that you want to use for travel.