I've wrestled with the umask on my server for about 2 years. I finally modifed the sshd config file to set the default for the whole server. SSH/SFTP kept changing the permissions to the default, in spite of what I had set at the shell level. Here's a tutorial for RH/Centos/Fedorda
http://forum.directadmin.com/archive/index.php/t-43656.html
-Dave