Having used multiple flavors of linux for many years and a similar number of cloud storage providers (dropbox, onedrive, gdrive, etc.), I too have run into this many times and tried almost all solutions. I would suggest you give Insync another try, maybe in a safer environment. I have used it for about three years at this point and it has become a staple for me as they have improved the gui/reliability/support.
Insync has worked well for me because:
- Most importantly is that it is linked to google drive (better product than onedrive or dropbox), which easily links files to your phone/chromebook/linux/windows in seconds. Insync specifically allows me to access google files on my linux machines as if they are local files (makes coding easier. Google specific files, such as "google docs" will launch a browser if you click on it through your normal file explorer. Also, if you like it will convert all google files to ods format.
- It works well with many different linux flavors (fedora, ubuntu, pi, etc.) and even non-linux computers (windows)
- Can work with multiple google accounts (especially nice if your personal is different than your school/work). I had it working with three different google accounts for some time.
- Insync has fairly good support (I have personally gotten feedback on about 3-4 issues over the past two years)
- Lastly, it has a fairly good gui where you can click to accept or block incoming shares, choose folders to include locally, and inspect errors. You can also set notifications to see who and when files are being modified
In your specific case, due to the large amount of files you want to upload at once and the spotty internet connection, I would suggest that you upload batches of files at a time through choosing the certain files to include in the sync through the gui and add other files to be monitored as those finish. I would actually suggest this method regardless of which method you chose to go. Also always keep a backup of your files before uploading to any 'cloud'.