Hi,
Suggest that you take a round route going up to Malawi via Beitbridge, Harare, Nyamapanda, Tete and then Zobue into Malawi. From there you have two choices heading back. Either back via Zobue, Tete then down through Changara, Catandica, Chimoio, Inchope then down to Vilanculos and the coastal area areas to Maputo and back to SA, or via Blantyre, Milange, Nicuadala, Caia, Inhaminga then Inchope. The latter route via Nicuadala certainly off the beaten track and will take you past Gorongosa National Park.
In Mozambique would make a stop at Cahorra Bassa Dam, then depends what you going to do in Malawi. In Blantyre there is a Back Packers called Doogles near the Bus Station. Its a good place to get info regarding the area and lake as well as the onward trip back into Mozambique.
Besides Gorongosa and the Zambezi at Caia, not much to see. Road from Inchope down to Vilanculos rather boring, but then you hit the coast and its fantastic! Vilanculos has a back packers called the Sonic Cucumber. The area is beautiful and great for diving/snorkeling. From there all the way down to Maputo its basically coastal with lots of places to stop over. Suggest you gather info as you moving down from Vilanculos.
From Maputo its straight back to Johannesburg.