root owns the home directory, the user owns the users directory inside home. You need execute permissions to open a directory.
If the user owns home then one user can get at other users files.
The commands I gave you are all you need, as long as you haven't made any files in users directory owned by root.
If you can't open a terminal reboot and go into rescue mode or edit the kernel options by adding a space then 1 to the end of the line.
This will give you root access, do the commands
chmod 755 /home
chown root:root /home
and log in as normal.