Campbell has a better completion percentage, better TD-INT ratio, and better QB rating for his career than Sanchez. Granted he's got 3 years more experience as a starter. Orton or Cassel could also be available depending on who KC decides to stick with. Alex Smith could be available if SF lets him go. I'm not saying they should definitely replace Sanchez, but they could be brought in to put pressure on him to perform and would certainly be an upgrade over Brunell.
He's had one of the best running games in the league, a serviceable tight end in Keller...sure he could have better receivers, but not every QB's going to have great receivers to work with. He's got decent enough receivers and has had decent enough receivers. He still hasn't performed up to the expectation of a top 5 pick. Do I think he should be cut? No. But it's not unimaginable that the team could be frustrated by his relative lack of progress all things considered.