Junior forward Taj Gibson, who was recently diagnosed with pneumonia, tallied his 11th double-double this season with 12 points and 13 rebounds. He also had two blocks. Gibson had seven offensive rebounds.
Hackett helped USC take a 31-28 lead, making a jump shot at the halftime buzzer. Marcus Johnson pleased the crowd early on with a dunk over the top of Cal guard Jorge Gutierrez, which ignited an 8-1 run and a 22-15 lead.
The Bears rallied, taking advantage of USC's 11 first-half turnovers to pull ahead 24-22.
The Trojans trailed 50-48 with 8:40 left in the game but turned up the defensive intensity down the stretch and won despite making just 17 of 29 free throws.
Cal (16-6, 5-4) lost for the fourth time in its last five games.
Jamal Boykin had 18 points and 10 rebounds for the Bears. Center Jordan Wilkes finished with 16 points and nine rebounds but did not return after suffering an injury with just over four minutes left in the game.
Cal?s leading scorer, Jerome Randle, had 12 points but was just 4-of-13 from the field, including 2-of-8 3-pointers.
Cal made just 2 of 16 3-pointers, well below its nation-leading average of 47.6 percent.