What dictates voltage levels on a PC's serial port pins?
RS232 has a wide range of operation, anything from 3 to 15V should work, although running at a lower voltage is risky and some poorly made receivers may prefer some voltages over others.

The different polarity is a problem. Pin 7 is Request to Send, and it is a control line that means the computer requests the device to send data. It is often ignored, but it is reasonable for the line to idle low when the port is not trying to communicate. It could be that the driver has options for "flow control" which need to be adjusted. Pin 3 is the transmit line. If that had a different polarity it would be a problem because the polarity changes to indicate the start of a byte, but I see that this is not the issue.

I put a lot of blame on the driver here because it sounds like the device works on one PC but not another.

It could also be a baud rate problem. It can always be a baud rate problem.