Yes, answers on closed questions (including off topic) still generate rep if the answer hasn't been converted to Community Wiki (I tested this on this answer and saw the user's rep increase and then decrease when I negated the vote).
Rep for these questions should not be negated. Frequently very old questions can be closed as Off Topic, a good example of this is How do emulators work and how are they written?. The answers on this are good and offered in good faith, the question was considered on topic when it was asked. Are you proposing that the author of the highest voted answer lose almost half his 24K rep because the question was later closed as off topic?
Has the system been gamed in this way?
Without a doubt it has.
Should a broad policy be implemented that affects everyone including those who are not gaming the system?
No it shouldn't.
I've personally given answers before voting to close. Just because a question is off topic it doesn't mean I cannot help that user, and it doesn't mean they had any clue their question was going to get closed, they asked in good faith.
Why is your suggestion unnecessary?
We already have an easy and targeted way to deal with this. The best way to handle gaming is to either:
down vote the answers that are obviously trying to "game the system" / "rep whore" (call it whatever you like). Once they enter negative vote territory they can be deleted. This has the effect of only punishing the individual who was trying it on.
cast a delete vote on the question once it is closed. When the question is deleted the answers are too, and the votes from them are removed.