It's possible that the USB connection is actually a composite device, to use a term from the USB spec. In this case, that would be both a video device and a serial port. If that's true, then the serial port might accept PTZ commands in one of several formats. (of course there are several!)
I'd start with VISCA, and an app that can send, receive, and display arbitrary binary data to an arbitrary serial port. (not just the text characters that the codes correspond to, but the actual codes themselves, not all of which have text equivalents)
If you can make that work, it's of course not practical yet, but then you can ask about automating that standard to that serial port.
There's also this plugin that *might* "just work":
This plugin adds a PTZ camera control panel to OBS that can control multiple cameras, and can automatically change selected camera based on the currently active preview or program scene. The plugin supports the VISCA serial, VISCA-over-IP, and...
obsproject.com
I haven't used it myself, so I can't say for sure.
As a data point, I have a USB PTZ camera in one of my rigs, with OBS on Linux, and it does control the PTZ "out of the box" as part of the source properties, even without that plugin. I still find it easier for this particular purpose though, to use the infrared remote that came with the camera. (obviously a repurposed TV remote, but hey, it works!)