Hi James,
You can use Configure Message Streaming Assertion available in CA API Gateway PM. I have used it for a complete file & not for chunks & it does the job. There would be minimal buffering at Gateway. There are some limitations on its usage. Please refer to the documentation for more details.
There are also some measures that can be taken to improve performance. You can find it here.
If your network bandwidth is good, 300 MB is pretty small & should not take more than 2 minutes.
Thanks,
Abhishek