The Frenchman withstood a fast start by Mardy Fish in the second set to beat the American 7-6, 7-6 in a closely contested third-round match.
The big-server clinched the first set 7-4 on the tiebreak, then trailed 0-4 in the second as Fish raised his game in front of loud home support. Both players struggled to hold serve from the one end of the Stadium Court due to dazzling desert sunshine but Tsonga won the next four games to level the score.
However, the Frenchman was then broken in the ninth after Fish, on the lunge, conjured a delicately angled backhand drop shot, before Tsonga immediately broke back in the 10th.
The Frenchman swept through the tiebreak 7-0 as the American made four unforced errors, wrapping up victory in just over two hours with a forehand crosscourt winner.
"I'm just happy to go through," a breathless Tsonga said fter improving his win-loss record this year to 11-3.
"It's not easy to play a match against an American here. I hope I will have more support in the next round.
"I was just a bit lucky in that first set and then he played very well for a couple of games, then I played better," added the Frenchman, who won his 10th ATP World Tour singles title in Marseille last month.
Tsonga's victory ensures he books his place in the last 16 for a fourth time in six appearances at Indian Wells and will next face Canadian Milos Raonic, who battled past Croatia's Marin Cilic 3-6, 6-4, 6-3.
In the women's tournament, former champion Maria Sharapova stormed into the quarter-finals of with a commanding 7-5 6-0 victory over Spaniard Lara Arruabarrena-Vecino.
Italian sixth seed Sara Errani was a 6-3, 6-2 winner over French rival Marion Bartoli. Petra Kvitova is also through after she won 6-2, 6-3 against fellow Czech Klara Zakopalova.