Pretty nice thread, informative as well . But the solution you gave wont work, because fading red color after crosshair gets on player is necessary, (not a good idea of changing default gameplay)
According to me, shotbots can be patched by checking hardware memory of mouse.
Mostly shotbots are made by reading the memory, till now only 1 guy has made a shotbot that doesnt read memory and it works for all servers.
back to main point, sb works after crosshair gets red, developers can make a memory check for shooting key or attack key whatever. means when you press fire, your hardware sends bit of data to game, then it shoots. its done in less than millisecond.
but m not sure , cause i havent tried it yet, probably it will delay the fire as compared to default attacking speed. .

Conclusion : sb can be patched easily.