If the refs caught and called ever foul the games would be roughly 56,000 times longer than they already are.
IMO, the best solution is to move the head ref ref to a video booth, and have him/her be the replay reviewer. They know the rules better than anyone else (even if it doesn't feel like it), and I can't believe a guy like Dick Bavetta can still see the game fast enough to nail the calls correctly in real time.
I think the best solution is to have less refs and less rules, or more defined rules that leave less "grey area" to be open to interpretation by each individual official.
I say less refs specifically because of when I was watching a game on ESPN where they had the head of officiating explain to everyone watching what he had just seen and why(in this particular case) there was no call when there was a blatant foul and there was a ref not 2 feet away from where the foul occurred.
and....here's where the comedy comes in! "the reason that ref didn't make this call is it wasn't his responsibility, he's watching for something else in this situation". as it turns out on this particular play it was an official on the other side of the court's responsibilty to see through 5 guys and make this call....
I say have 2 refs. 1 watching the ball and whoever is involved in dribbling/handling the ball and whoever is defending the ball. and have the other official watching everything else off the ball. keep it simple these morons probably don't know how to dress themselves in the morning.