** Uploading (one file at a time) is VERY time consuming. **
That shouldn't be necessary. Just setting the FTP client to transfer the files ascii mode (rather than automatically detecting file type) should be all that is necessary.
One person did however report that they had to use a different FTP client to get a proper ascii upload. I personally recommend WS_FTP. A few (MAC?) users had problem with the .zip archive file getting corrupted by their computer and instead had to use the .tar.gz archive.
** If you could tell me which file(s) controls the name field for setting up new users I can reupload all of those. **
I do not know which exact file(s) would be your problem and since you appear to be having problems in several areas, the list could be numerous. It could be the template you're on at the time of the problem or the main script file or any one of the /lib/ or ancillary files which are involved in the particular function.
** I have spent time customizing this and do not want to start from scratch. **
What exactly have you "
customized"? Maybe those file(s) can be backed up and restored after the new upload? Hopefully they're not holding the cause of the problems.

Dan O.