But while testing this, it appears the upstream site has some blocking/throttling mechanisms, so now I can't test it because they're throwing back pages indicating I'm "reading articles faster than a human can read" (my code had a 10-second delay in it).

Now I'm adding randomization across an array of anonymous proxies to try to alleviate that blocking, but the list of proxies is not reliable.

When a site tells you that you are hitting it too hard, it is pretty darn rude to try to thwart them by going through anonymous proxies. Instead of wasting your time trying to violate their attempts to control access to their site, why don't you just reduce the frequency of your hammering them while you compose a polite letter asking for permission (if the second step is even required).