About 50% of HID reports (every second one) from my custom
device are lost. I use ReadFile function in the loop to
read reports.

What is interesting that another third-party utility
receives about 95% of valid data. About 5% is lost.

Any idea where can be the problem ?

Some more details:
Device is low-speed, using interrupt endpoint for sending
8 bytes of data each 10 ms.