The easiest way to do all this is to simply login as root from an SFTP client. SFTP is handled by the SSH daemon and therefore enabled out-of-the-box.
Once you have everything setup, however, I strongly recommend disabling root login ssh config to help tighten security.
For regular FTP I recommend vsftpd, the self-described "Very Secure FTP Daemon." You can install it via the command line using:
aptitude install vsftpd
It's a cinch really. Once you install it you can configure it by editing /etc/vsftpd.conf.
All that said, I VERY STRONGLY recommend against editing system files via plain FTP. Logging in as root over FTP is extremely insecure. You are literally sending your root password and all files you're editing as plain, clear text across the internet. SFTP, which is essentially SSH, is exponentially more secure.
If you really want something permanent, I'd advise keeping root login via SSH and editing files via SFTP. Regular FTP might be faster, but, as I mentioned, it's quite insecure.
John, could you post your vsftpd.conf?
Ah, that's a good point. You should open port 21.
Also, you might be interested in this, which was just posted here in the forums:
If you're on Ubuntu, you can install it via
sudo aptitude install ufw
On other OSes, you may need to do a tiny bit of research to determine the system's package manager (on Fedora it's 'yum', for example).
sudo ufw allow 21/tcp