I was having this same problem. I didn’t find anything on DigitalOcean community about this, so I went out to the farther deeper parts of the internet to find an answer.
Eventually I pieced together the answer by reading several different forum posts and and stitching everything together and filling in the holes.
Alas, this is what I did to solve the problem.
As it turns out, VSFTPD does not make any changes to file permissions. Long story short, the /var/www/ folder does not (for several obvious reasons) have executable properties to it, and apparently the act of creating a new folder (such as ones needed for your theme) requires those permissions. So you need to change the permissions.
What I did is this:
chmod 777 -R /var/www/ghost/content/themes
This gives the themes folder (and deeper folders) executable rights for all users on the system. If you try to upload your files now they should work.
Now after I uploaded the files, I decided that I did not want to keep the folder with executable permissions, so as soon as it was successfully uploaded I reversed the process, thereby making it secure again.
chmod 755 -R /var/www/ghost/content/themes
The above line of code will do the trick, locking down your folders in the way they were before.
Hope that helps!