Rahon and Franklin had 17 points apiece, and No. 25 San Diego State edged Southern California 66-60 on Sunday night.
Franklin scored six points down the stretch as the Aztecs (4-1) earned their fourth consecutive win since dropping their opener against Syracuse on the USS Midway.
"They lost a close game in Maui and we knew this would be a battle," said Franklin, who made only 4 of 15 shots, but converted all eight of his free throw attempts.
"Beating a Pac-12 team on the road does a lot for our confidence. This will help us prepare for UCLA next weekend."
Rahon was 6 for 7 from the field, making all three of his 3-point attempts.
"Anytime you win a road game it's a great feeling, especially at the Galen Center against a Pac-12 team," Rahon said. "We continued to battle and stay focused even after losing our big lead."
The Trojans opened the second half with an 18-4 run to take a 41-39 lead on a basket by Wise with 13:28 to play.
The game remained tight until San Diego State grabbed control at the end.
"Unfortunately, we didn't come out and shoot the ball early," USC coach Kevin O'Neill said. "We got better as the game went on. We had our chances. We got the lead twice in the second half. But you can't shoot 11 of 20 from the line and you can't be immature. We gave into things at the end and that hurt us."
USC was assessed two technical fouls in the final two minutes. Thames and Franklin made 5 of 6 free throws and Rahon had a 3-pointer to extend the Aztecs' lead to 64-57 with 1:02 to play.
"The (late technical) was a big play," O'Neill said. "It was immature on (Omar Oraby's) part. The immaturity of the emotional stuff, you can't overcome that against a good team. That's not acceptable."
San Diego State has won 10 straight games against Pac-12 schools and 25 in a row against California teams over the past three years -- the longest active streak in the country.
The Aztecs also earned their first win in seven games at the Galen Center.
"I'm proud of the toughness and the character of our team to win a like this," San Diego State coach Steve Fisher said. "We have a long way to go to get where we think we want to be."
The Aztecs held USC to three baskets over the final 5:26 of the game.
"Out of the gate we were sensational with our defense," Fisher said. "Our defense created offensive opportunities. We knew the game wasn't going to end how it started with how big of a lead we had. We were somewhat fortunate to get out of here with a victory."
San Diego State got off to a fast start. Thames' 3-pointer made it 12-2 with 14:36 to go in the first half.
The Trojans missed nine of their first 10 shots and committed four turnovers in the first eight minutes.
Rahon made a 3-pointer and followed with two more baskets to increase San Diego State's lead to 27-8 with 7:16 left in the first half.
Ari Stewart hit a 3-pointer down the stretch to help USC close to 35-23 at the break.
The Aztecs were without second-leading scorer Chase Tapley, who is sidelined with a strained patella tendon. He is expected to return next Saturday when San Diego State faces No. 11 UCLA, which lost 70-68 to Cal Poly on Sunday night.
Information from The Associated Press was used in this report.