Ok, after trawling the web I've realised that there's no easy solution. I really don't want to use frames so here's my compromise:
This gives a header and scrollable main content div with working anchors in Fx/Safari etc and in IE it just appears as a single scrollable page. (i.e the header scrolls with the content). I've completely removed the footer as this was more hassle than it was worth. I've also removed fixed positioning as the scrolling of fixed position divs in IE looked shoddy with the JS I was using anyway. So, no IE support for what I wanted to achieve, but as my client uses Safari I should get away with it!