I've been testing a bit more and come to the conclusion that the problem is definitely on the client side and JRiver is to blame for it. Basically I've tried to connect to a different server (Plex) and got the same exact error; then I've tried different ASIO drivers for my DAC (ASIO4All and FlexASIO) getting mixed results: the first one plays fine the server files but just up to 192Khz, while anything above that (DSD included) can't be played even if locally stored on the client. The latter just wraps around WASAPI so, in the end, it is limited like using a WASAPI directly (again, no DSD).
So, to summarize: DAC manufacturer ASIO driver plays any format locally but none from the server, ASIO4All plays anything under 192Khz from everywhere, but isn't able to go above that freq (384Khz PCM and DSD); no way to have every format supported by my DAC played from a server like I'd want.
I dunno what to do, I guess I'll give Foobar a try, although I hate this because I bought a JRiver license and I prefer its interface (especially the "theater view"). Another (expensive) solution would be adding a large HDD to the client and keep the files locally.