In the Durban area you might want to try out the anstey's beach backpackers,it's pretty decent and about a five minute walk to cave rock.It looks like they've got some pretty good rates on 4-5 sleeper flats so check out
http://www.ansteysbeach.co.za - As far as the central Durban area goes you're not going to find anthing near the beach which is affordable,unless you stay in an ultra scummy spot on like point road or something but that's not advisable,and the waves in town leave a lot to be desired as well.