First of all - thanks for investigating in this! I think this is a long needed and missing functionality in OpenACS, and should definitely be enabled by default. I have told users to "hit Reload, no not Reload, CTRL-Reload, yes you have to hold down the CTRL key and click on the Reload button" ... a few times, and that is annoying.
I think though that the right place to put this is the request processor, because only there you are sure what kind of file a URL really maps to. With abstract URLs you can't tell only by the URL all of the times, e.g. when '/some-file' maps to '/some-file.html'. Also there might be an index.vuh that handles requests for *.html files (not sure if that's really possible), which shouldn't be cached, although the URL ends on 'html'.
If you agree but don't have the time to rewrite your proc then I could give it a try (not immediately though).
Also I think it could be done more efficient with 'string match' instead of regexp, something that should be considered when adding code that is executed upon every request.