Hello!
This resembles a load / stress testing scenario, which I've done a lot in the past prior to releasing numerous APIs to production. Python is too slow for this, GoLang would require a bit more programming than desired, however, there is a tool written in Scala on actors, called Gatling Gun that I've used to successfully fire up to 10 000 req/sec from a single machine, however, considering its architecture, it's well capable of doing even more.
Changing the request data per request shouldn't be a problem as long there is either a source or a logical way of generating it. Proxy is a natural thing in HTTP, configuring requests to go through on also isn't an issue.
Looking forward to hearing from you!
Best regards,
Tijana