From what I understand, since the NFS share is mounted with rw and no_root_squash, it should allow any user to write into those directories.
This is wrong. Your files and directories still use the user/group/other read/write/execute pattern just like on a normal filesystem. It just means that NFS doesn't impose any ADDITIONAL restrictions.
If you're using NFS, you MUST keep your user and group ids synchronized between all machines, or you'll get things confused hopelessly. Internally, the operating system doesn't store user/group names, it stores their numerical ID. Commands like ls use /etc/passwd to map these ids to names.
So, if your first machine has a user named "adam" having UID 1000, and "bob" having UID 1001, and your second machine has "bob"'s id 1000 and "adam"s id 1001, then the same file, having user ID 1000, will be shown as belonging to adam on the first machine and to bob on the second. This has nothing to do at all with PAM - PAM does just the authentication (if the user claims he's adam, and he gives password SeCrEt, we will assign uid 1000 to him).
Services line NIS, formerly named YP, and LDAP were made to solve exactly that problem - keep databases synchronized for several hosts. (This is where i lied when i said ls looks up user names in /etc/passwd - it checks /etc/passwd, nis, ldap, and others, depending on /etc/nsswitch.conf)
To get things right, check your user ids in /etc/passwd on both machines. Use ls -ln to show the numerical IDs instead of the names, and if the NUMERICAL ids differ, nfs is doing strange things. Make sure you use the same user id for the same user name on all machines, and your NFS will work just like it should.