I've thought about this before. Maybe randomize reactions within a range, or apply some kind of focused perception filter with a delay to mimic the focus and processing of the human eye.
IIRC correctly Valve's inhouse TF2 bots mimic target accquisition times, mouse innaccuracy and other things. They had a blog post explaining it around release, but I can't find it.