After created a new FTP user in Virtualmin 2.97, I was unable to upload files to the home directory. Checking the permissions, I noticed that it was owned by the server owner (domain.com:domain.com) instead of the ftp user as expected (ftp.domain.com:domain.com). So, I did a simple CHOWN ftp.domain.com on the home directory "ftp", and now all is well.
I'm not sure why it didn't work automatically though. I'm pretty sure I've done this before without a problem in previous Virtualmin versions, so maybe a new bug has been introduced.