FTP sites/all and sites/default/files files zipped and unzip on server or FTP as is? I have cpanel with hostgator, and it's faster to zip the folder sites/all and sites/default/files and then unzip on the server.

Is that the best way to do things or can it get corrupted?

Is it safer to FTP the files as is from the localhost environment?
My first recommendation is for /sites/all that you use a version control system such as Git/Subversion to save then the pull changes. If you must FTP them, I've found it's just as easy to copy them all over at once rather than unpack on the server, mostly because shared host SSH capabilities are sporadic and semi-functional at best.

Things to be careful of: if you're literally copying over /sites/default/files make sure that any .htaccess files were also copied. Additionally, you'll for sure have to do a cache clear because any css or js files saved in those directories will be unlinked from the current database.