How to configure D7 so files get uploaded to a different server
I do something very similar.  If you're running infrastructure that is capable of this configuration, I recommend serving up a share on your file server (Linux or Windows Server) and just mount it in Drupal's public file path, wherever the public directory is for that particular field.

For example, take the following Samba configuration (found in /etc/samba/smb.conf if you run a Linux-based file server).  This comes at the very end of the file after all other configuration options:

[data]
    comment = Data directory
    browseable = yes
    writable = yes
    valid users = "@DOMAIN\Domain Admins"
    path = /data
    create mask = 0664
    force create mode = 0664


The valid users syntax there says "allows this group of users" to access this share.  In this case we're using PAM to hook up our file server to Active Directory, and this particular group is made available once you hook the two up.

On your web server, whatever is hosting your Drupal site, navigate to the public files directory.  Say the particular field you need to make the files available for is public://field_with_20k_files/.  You'd run a similar mount command like so:

sudo mount -t cifs -o user=domainadministrator,uid=domainadministrator,gid=apache //fileserver/data /path/to/field_with_20k_files


I have the gid set to whatever process is running the web server so it has access to that directory.  Most likely you'll want to ensure that the web service has read and write access to the web server is actually capable of uploading files.