An idea came to me when you brought this up. You could use partial file update to update the ID3 portion of the file directly which will cause processing to get the metadata again for the file as well as update the remote file. You would need the file locally to do this so you can update the ID3 and do the Md5 and then get the differenced portion of the file. This way you would only need to reupload that portion of the file.
I'm interested to see if this will work because it would be a slick way of using partial file update.
Regards,
Barry R.