This has nothing to do with cache.
You browser stores a history of visited links, and there is nothing you can do about that from the page using headers.
All you can do is the very user-unfriendly way of making the colors of visited links and un-visited links the same.
That very thing is going on at this site, so people can't see which post they have and have not read.
BTW: that still needs fixing!!