This is a good question. It really does seem like a contradiction. When we look closely at Atticus, we can understand why people who criticize him respect him. First, Atticus is a man of generosity. He shows charity to all people, no matter who they are. For example, he shows great kindness to Mrs. Dubose. So, even though Mrs. Dubose is unpleasant to people, she has to acknowledge that Atticus is a good man, because he is always kind to her.
More importantly, we see this principle when Atticus serves people with his knowledge of the law without payment in the form of money. For example, he helped Mr. Cunningham, not many people would have done this. This conversation between Atticus and Jem show this point clearly.
I asked Atticus if Mr. Cunningham would ever pay us.
“Not in money,” Atticus said, “but before the year’s out I’ll have been paid. You watch."
We watched. One morning Jem and I found a load of stovewood in the back yard. Later, a sack of hickory nuts appeared on the back steps. With Christmas came a crate of smilax and holly. That spring when we found a crokersack full of turnip greens, Atticus said Mr. Cunningham had more than paid him.
Finally, Atticus is a man of courage. The assumption is that most people respect people of courage. We see this when Atticus stands his ground in the face of the mob. During the trial of Tom Robinson, we realize that Mr. Cunningham is probably the dissenting voice in favor of Tom Robinson. Atticus earned the respect of Mr. Cunningham.