The Scot held off Graham Rahal on a late restart, then beat teammate Scott Dixon on the 1.75-mile temporary street course at Exhibition Place.
Franchitti caught a break when his team successfully appealed the penalty he received for nudging rival Will Power into a spin that stalled the pole-sitter's car on the 57th lap. Franchitti kept going, while the defending race winner had to try to recover from 18th.
"I'm always racing clean, he's always racing dirty ," Power told the VERSUS network during the race. "He never gets a penalty from IndyCar. Just not right."
Ryan Hunter-Reay finished third. Marco Andretti, the winner in Iowa 15 days earlier, was fourth and Vitor Meira finished fifth.
Power's day was over on the 66th lap after getting banged into the wall from behind by Alex Tagliani. The Australian placed 24th in the second consecutive race he failed to finish after suffering a mild concussion in a crash at Iowa. He trails Franchitti by 55 points in the standings going into the race in Edmonton in two weeks.
Danica Patrick had a rough day after starting 21st. She was pushed off the road by Japan's Takuma Sato on the seventh lap, puncturing one of her wheels. She was back on the road after a pit stop, but it was more costly for Sato, who suffered wing damage and was stuck in the pits and fell six laps down. Patrick finished 19th.
Formula One: In Silverstrone, England, Fernando Alonso produced Ferrari's first victory of the season at the British Grand Prix after points leader Sebastian Vettel's hopes were thwarted by a pit-stop blunder.
Vettel was overtaken in the Silverstone pits by Alonso just after the halfway point when the Red Bull driver's mechanics struggled to attach a wheel.
"I saw the problem in the pit stop with Sebastian and we were in the lead at that moment, but who knows what might have happened after that," Alonso said.
A 27th career victory for Alonso lifted the two-time world champion to third in the standings behind Vettel and Mark Webber.
"Today it is 60 years since Ferrari won its first Grand Prix in Formula One," Alonso said. "And today we won on the same circuit with the same passion."