Correct me if I'm wrong but doesn't usb communication send parity check bits along with the data? It would seem that the silabs chip would handle some error checking on the usb layer but I may be wrong. I haven't dealt much with the software side of things when it comes to bitcoin mining. It seems like as long as error rates are less than 1% them nobody seems to bother reducing them further, I don't think I would bother either. However it would be good to know where these errors are coming from.
Its not really a USB connection, its a rs232 serial connection. rs232 can support parity, but this is just for error detection. What I would do, if I had my hands on the firmware would be to modify it to send the 4 bytes of nonce, 3 times in a row (so total of 12 bytes). This would serve as error checking (the 3 nonce values didn't match) and error correction (take the two nonce's that do match). There are more complex schemes for checking and correction codes, that potentially use less bytes, but for the sake of 12 bytes this is about as simple as you can get.