Attaching a small computer running some other code besides wsl2, is not an answer to the charge that wsl2 can't access usb. It still isn't accessing usb. The code on the usb server device is.
That's not semantics. What I mea is:
For any low level code of my own that I wrote to run on *ix, I can just as easily run that same code on an arduino or pi, and wsl2 and the usb server hardware would just be pointless extras.
For any code that I didn't write and can't port (say, closed source xilinx fpga programmer) there are native windows versions which work better and are better supported than the linux version anway. So here too wsl and usb server harware would both be pointless extras and backwards.
People are bamboozled and forgetting to step back and remember what the point of doing something even was in the first place.
I say it's a mistake to even get sucked in to the question of how to work around any deficiency in wsl, instead of asking why you even care or want to run a linux app on windows in the first place.
Most people prefer Windows over Linux, even if they work on software that is deployed to Linux, or maybe they just have a single Linux application that they need.
In my experience, there are a lot of tools that are easier to use on Linux, or are Linux-only, without a proper Windows alternative. WSL(g) allows seamless experience for running such apps, with some caveats (such as USB access.)
I've had good experience with https://www.virtualhere.com/usb_client_software.