The least expensive way to travel there is take water taxi from San Pedro to Belize City. From the water taxi terminal take a land taxi to Belize City bus station. From the Belize City bus station catch the bus for Benque Viejo which is the western border town in Belize next to Guatemala. It's around 3 hours or so bus ride. I dont remember where the bus stops in Benque so you may need to get a taxi to the border crossing from the Benque bus stop, but I think the bus goes directly to the border crossing.
Once you are at the Belize/Guatemala border crossing, go through the border and walk across the bridge on the Guatemalan side into the beautiful hamlet of Melchor. Once you are there you'll see plenty of Collectivo buses going to Flores (around $7usd per person estimate), and also some private taxi's that'll take you to Flores/Tikal if that's your preference.
Another option is to hire a private taxi in Belize city to the Belize/Guatemala border crossing. I think that should cost around $100usd, but that price may vary. Im sure someone on here has a good driver they can recommend.