Shell access removes the gui. You are basically talking directly to the server. I am sure the FTP gui interface is correct most, if not all of the time, however I prefer the talking directly to the server to get my info. I have seen failures using FileZilla, some of these may have been local or caching issues, but to get directly to what I want to know I cut out the GUI middleman.
"he doesnt need shell access to test whether or not he can change permissions...."
Shell access in this case is recommended to disregard the gui output from the FTP client and just verify - using shell - that his perms are what his control panel says he set them to. Whenever there is a problem use shell instead of any gui interface. Using PuTTy I can FTP, edit text and config files, change perms, admin UNIX, create users, create subhosts, etc - all without any kind of gui and there are no caching issues and is just plain faster and more accurate.
Caching issues for me arise when I have multiple customer accounts open in my browser at once (I may have 10 to 20 windows open). If I get a call about an issue like the one mentioned, I will start with shell and work from there. If I want to see what my client sees I will use his/her gui interface. It us not uncommon for me to open a different browser or FTP client to VERIFY what my control panel shows me because of a caching issue I may have.
"a host that has disabled phpinfo is NOT going to give shell access to it's users...."
I would tend to agree. This may be an account with one IP address and several subhosts configured on the "other side" as opposed to an acount with its own IP address.