Franchitti avoided a seven-car pileup on the first lap en route to a 0.25-second win over Ryan Briscoe.
"Track position was critical today," said Franchitti, who started on the pole. "It probably wasn't the most interesting race for the fans, but I did what I had to do today."
Defending champion Helio Castroneves finished 18th.
Briscoe leads Franchitti by four points in the race standings with three events to go. Scott Dixon is in third place.
Dixon also has four wins this season. Briscoe has been a runner-up seven times.
Exploding whale video goes viral on Internet
18-year-old elf alleges mall Santa pinched her buttocks on the job