Prova a fare tutti controlli del caso (referrer, codici di controllo, ecc) nelle funzioni Application_OnStart e Session_OnStart del file global.asa
posto nella root del tuo web server (non credo serva a molto in quanto i tuoi file da scaricare non hanno l'estensione.asp - a meno che non la modifichi manualmente...)

Altrimenti ti rimane poco da fare:

Complicare gli url con nomi di directory moolto lunghi pieni di caratteri incomprensibili (tipo ID di Sessione) Cambiare (e crittografare) il nome e l'estensione del file in modo che non sia possibile il download, un sistema (veramente banale) potrebbe essere:

per esempio: myfile.pdf >> myfile_fdp.asp
myArchive.zip >> myArchive_piz.asp
ecc...

per i download "controllati" poi rimetti tutto a posto via codice:
myfile_fdp.asp >> myfile.pdf
myArchive_piz.asp >> myArchive.zip
ecc...