Reread the man page.
just gives you the permissions of the username, without the environment
of that username. No username => switch user to root (uid 0, really)
sets up the environment of the user you have switched to. It matters,
because if you are "frodo" and you "su bilbo", you keep frodo's
environment, which means if bilbo has a different path from frodo, you
won't get what you expect for bilbo. However, if you use "su - bilbo", you
will get the environment of bilbo.
It doesn't matter that much for this question, since
should give the permissions necessary to read almost any files.
How is the home disk/partition mounted? If it's mounted via NFS, root
most likely WON'T have permission to read the files, since that
permission is set by the server. If the disk is local but mounted in a funky
way, you could cause all files, but not just certain files to be unreadable.