I only pin cpu cores for my vms, the system is capable to manage them for docker by itself. For vms, don't use core0 and the linked HT core, that's what unraid wants to use. Spread them out past that.
As for the ssds: I'd probably use the 500gb one as my temp download, and make a zfs pool of the 2tb disks to use for docker, appdata, vms, cache, ...
I finished a build almost identical to this a few months ago, just with an rtx 3050 instead of the quadro and 128gb ddr4 instead of ddr5.
I've got 2 1tb Samsung 980 pros, sn850 black, and another Samsung of some sort.
1 of the nvmes is for appdata, another for download cache drive.
The other 2 NVMEs and the rtx 3050 are passed through to a Windows 11 VM I use for gaming via moonlight on my steamdeck or TV.
For my VM I pinned all the cores except core 0 and the associated HT core.
Except for one time recently when I had to rebuild all my Plex metadata for 120TB(chapter thumbnails, intros, Sonic analysis for 300+k flacs) I can game flawlessly no matter what's going on in the background of my server.
One thing that I just recently figured out that had been bothering me for a while is tiny microstutters/slight audio skipping while I was trying to game. Turns out it if you have the unraid web gui open(I've found it primarily just the dashboard that causes this), it will cause this for some reason. Once I made sure to always close the webgui when done my VM runs perfectly.