I am not sure if this is a server-side or client-side problem.
I have an NFS share that I mount from a Fedora 31 workstation. When I mount the share using NFSv4.2, I find that the process umask is ignored when creating files and directories within the share. Files are created with 666 permissions, and directories are created with 777 permissions. Mounting the same share with NFSv4.1 rather than 4.2 works fine.
Mount an NFSv4.2 share from OpenWrt to /mnt on Fedora
ls -ld /mnt/foo
Resulting permissions are 777, but they should be 755, due to a process umask of 0022.