Conceptually, you could require logins and give visitors "karma" ratings based on how they participate: + points for uploads or postings in a forum, or whatever you consider "good", and - points for downloads, etc. If a visitor's karma decreases, slowly increase a delay time for each request... I don't know of an easy, free script for download.
I have to say I'm a little disappointed, though, with the sentiment of your post and concern. A few thoughts:
I agree 3 GB in 1-2 days is a lot. OTOH, even if that happened every day, you wouldn't come close to using your bandwidth quota.
It is not clear at a glance what parts are mirrored. That history and sentiment might seem to encourage additional mirroring, which requires downloading. While some crawlers use delays, an individual's efficiency is best served by quick downloading, if the server can handle it.
Some people who see useful things like to download them for using/reading off-line. Some people who see things that disappeared previously like to download a copy just in case they disappear again.
One person's "leeching" is another person's productive use of a resource.
If you can go days or weeks without noticing, until you review logs, does it matter?
I'd rather have somebody downloading information to make good use of it than somebody "hammering" (requesting) again and again and again and again on formmail or guestbook scripts that transfer trivial KB's, and no longer really function.
They hired more support help.
Tip me (and DreamHost gets 5%+$0.30) Cut the code: [color=#00CC00][b]9999[/b][/color]=$99.99 Off