Hi!
It seems to me that processing external calls as if they came from the inside would make your system more prone to abuse...
Does the version of FreePBX with Elastix 2.4 supports making a default route by leaving the DID number empty.
ie From the help text:
Define the expected DID Number if your trunk passes DID on incoming calls.
Leave this blank to match calls with any or no DID info.
You can also use a pattern match (eg _2[345]X) to match a range of numbers
Couldn't that do what you want or did I misundertood your problem?
The other possibility I could see is to create those in bulk, does the bulk handler exist in Elastix 2.4's version of FreePBX?
As for validating the blacklist from another context than the normal ones I am pretty sure you would need to add custom context(s), dial plan(s), etc..
Good luck and have a nice day!
Nick