The CA schools insist on playing each other, but everyone else also wants to play in California every year.
So in order to accommodate USC, UCLA, Stanford, and Cal playing each other every year, but also allowing the rest of the conference to get an extra game in CA more often, they play 9 games.
This can be fixed in about a dozen ways, but all of them require the CA schools to give up their least-important CA rivalry (USC/Cal and UCLA/Stanford) and they refuse to do that, so we are where we are.