I figured it out - and it had to with the recommended settings in the documentation.
Basically for some reason the proxy_request_buffering set to “off” was the problem. Once I changed that to on and tweaked a few settings to still handle large files things seem to work much better.
Also. I ran into that “expected file size XXXX… but and wrote YYYY” error with very large files. Turns out my particular issue was my docker image filling up because space needs to be reserved for each portion of the file then finally enough to construct the entire file and finally move it. So basically I changed my docker image size to be 4x the size of the largest file that would feasibly be uploaded just to be safe.