I am not American so am not eligible to enter.
I think this is a very simple problem to solve. Just create a star code that causes the service provider to log information about the call such as the Caller ID, Caller ID Name, ANI, terminating carrier, and probably other things I haven't thought of. Advertise to users that when they receive a telemarketing call, they should hang up and dial this star code. With that volume of data it should be trivial to analyze it and block at least the worst offenders, using a scoring system similar to the system used in email spam filters.
I do this on a small scale with my OBi110. It's very effective, but would be even more effective with crowdsourced data. (I can only block Caller ID after I receive and identify the first call.)
For this to produce the best data, it needs to be a free service that everyone can use. The POTS industry isn't known for innovation, and it isn't known for providing free services.