Also, are you testing this with an account on the client that exists on the Server. Catalina (and probably Mojave) cache the user credentials and even if you think you are logging in with the Sharing Only user credentials, you get logged in with the Mac credentials.
I created the following hierarchy:
/Users/Shared/Sharing Test -- group: tester read only, everyone: no access
./Share A -- group: tester read & write, everyone: no access
./Share B -- group: otherGroup read & write, everyone: no access.
/Users/Shared had standard permissions.
The other permissions are POSIX permissions set up on the server.
In File Sharing, I added tester group with Read/Write and everyone: no access.
If I log in via a sharing only user that is a member of tester, I can only see Share A.
If you want this to act as a file server, you'll need to add the following ACL to the top-level folder you are sharing, and all children (-R) if it already has contents:
"group:<groupName> allow list,add_file,search,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,file_inherit,directory_inherit"