7
If you have shell access to your hosting you can use tar to bundle up all your files and preserve all the ownerships and permissions.
tar -cvpf mysite.tar ~/public_html
~/public_html should be replaced with whatever your site's doc root is.
If you dont have shell access to your hosting, Id put that high on my shopping list for my next host ;)
You wont be able to ftp your directories and files with intact permissions onto a windows system since unix and windows use entirely different schemes. If your host doesnt allow you to have a shell, perhaps you could ask them to tar up your directory for you (with the command above) and then ftp to wherever.