300kb :D I tend not to have an entire site over 300kb let alone one image!
The background image you could easily tile, it might not have the exact same effect, but as most of it is hidden anyway it really wouldn't make any difference, make it 50x50 or something at least.
The same is true for mainbg.jpg
Things like pagelfip.png you could just have it 20px in width and the background position top right with no-repeat and a fill of #000, that'll reduce that'll reduce it considerably.
footer.png again you could just use the bottom white effect and us it on the top and the bottom and then a much smaller image repeating with a further right and left image either side. Or at the very least have the middle bit about 1/3 of the height and repeating.
You could improve every image on there, but there's a few pointers to get you thinking and understanding.