I think the best approach would be an extention of the existing flagging mechanism, where if a post gets enough flags as "not an answer" the post can be dealt with by non-moderators.
In the meantime, though, I think what you've been doing is exactly right.
We can also protect posts (like this onethis one) which seem to attract that kind of answer, but that's not necessarily the best new-user experience. My inclination is to save protecting posts for the ones that attract spam (like the data recovery questions), but I could be persuaded otherwise.