I just got OverWatch banned in CS:GO when using Anti-Recoil, but you can't actually see it on any of my replays/demos, so I'm now on my way to geting unbanned.
But, I have same problem with bullets registration as you. Im playing in 25-35 FPS and many times, when I hit someone, blood pops on the wall behind him, but when I die it tells me I didn't hit him.
CS:GO (Source engine) Is registering everything in "Tics". Max amount of ticks per second is 168(Not sure if accurate), but to achieve that, u need more than 168 Frames Per Second. So, if you have 30 fps, you have 30 ticks per second which means some data isn't sent to the server. So, your gameclient shows hit, but it wasn't registered in a "Tic" so it won't be send to the server for analyzing.
Only thing we can do is have huge luck, or buy better PC
