I agree with the previous answers, but I just wanted to mention a reason why this should be the policy.
Leaving old off-topic questions open threatens to set a bad precedent.
If questions like this were left open just because they were on-topic at the time of asking, then new users would see highly-voted and unclosed "real world science" questions and assume - quite reasonably - that such questions are well-received when in fact they're not. Then they might post such a question themselves and - again, quite reasonably - feel unfairly treated when it gets closed. "Why is my question closed when this very similar question by a high-rep user isn't?", they'd say, and they'd have a point. The policy set of an SE site is already confusing enough for newbies - spread out over multiple meta posts, changing over time - let's not make it more confusing than necessary.
After all, a common piece of advice for people posting low-quality questions is to look at well-received existing questions in the tags that interest them. If some of those well-received questions are actually off-topic, it just confuses things unnecessarily.
So, don't consider the age of a post when deciding whether or not to close it. Is it off-topic according to policy - that's the only question you need to consider. Close-voters aren't required to know all the details of the 6+ year history of the site and what was on-topic when, nor should they be.