How can i have a layout similar to this?
I have seen a few solutions that are not quite right for me. Examples and comments I have seen suggest this is not possible. (Diagram is missing overflow auto in the middle).

For what it is worth: here is my current fiddle (where I decided to trial a table, hrmmmm).
http://jsfiddle.net/valamas/m8R43/6/
Additional:
Printscreen as mentioned in comments. Occurs when dragging/selecting down the page after adding a header. See: http://dabblet.com/gist/3753308

If you’re not too concerned about source order:
http://dabblet.com/gist/3748868
It uses a bit of a hack to get the footer to display on screen on lower viewport heights:
The ‘border-box’ property is explained here: http://www.paulirish.com/2012/box-sizing-border-box-ftw/
Basically, what it does is, it makes elements contain borders and paddings inside them. So, the bottom border given to the body here will stay inside the viewport, as opposed to sans-border-box.
This makes it kind of like a negative space which can be accommodated by the footer. I used ‘border’ because you may want to tinker with the padding.
As for the footer, it’s fixed positioned, so it’s relative to the viewport, not the layout which is what you’d get with absolute positioning. Hence it lying on top of the bottom border of the body (which shares its height value).
The center block is fluid because I gave it the ‘overflow: hidden’ property, which clears floats( http://www.stubbornella.org/content/2009/07/23/overflow-a-secret-benefit/ ). It will also work without overflow, but it can cause issues.
Since you want to be able to scroll when the content inside the columns are larger than the content height, I’ve added a container inside the center column, and gave it overflow: auto.