Rhys Hoskins and Odubel Herrera also homered for the Phillies, who won the three-game series by capturing the two weekend games after suffering a 13-2 drubbing on Friday night.
The Phillies led just 6-5 before Scott Kingery led off the seventh inning with a single.
With two outs, Herrera drew a walk, and after both runners advanced on a wild pitch, the Brewers elected to walk Carlos Santana intentionally.
Franco then followed with his two-run single, increasing the Philadelphia lead to 8-5.
Kingery had a run-scoring double in the eighth and Herrera a solo homer in the ninth, helping the Phillies seemingly pull away into a comfortable lead.
But the Brewers rallied in the ninth off Phillies closer Hector Neris, with Jesus Aguilar leading off the inning with a solo homer and Eric Thames adding a three-run shot with two outs, closing the gap to 10-9.
However, Jake Thompson, recalled from Triple-A on Saturday, came on and retired Christian Yelich on a first-pitch lineout, recording his second career save while giving the Phillies their fourth win in their last six games.
Tommy Hunter (2-0), the second of seven Philadelphia pitchers, was credited with the win after throwing one inning in relief of starter Aaron Nola.
Nola was pulled one out into the fifth, having allowed four runs and seven hits. He walked four and struck out four.
Brewers starter Chase Anderson (5-6) took the loss, after being roughed up for six runs and five hits in 5 1/3 innings. He walked two and struck out five.
Herrera had three hits and scored three runs for the Phillies, who had lost two of three to the Brewers when the clubs met in Philadelphia earlier this season.
His homer was his ninth of the season. Franco also recorded his ninth, while Hoskins' homer, a two-run shot in the first inning, was his 10th.
Franco and Kingery had two hits apiece for the Phillies, while Santana and Cesar Hernandez scored twice each. Nick Williams also chipped in with two RBIs.
Thames hit two homers, the first coming on Nola's sixth pitch of the game. The home runs were his eighth and ninth of the season.
Aguilar's homer was his 13th. He also collected a pair of singles and two RBIs for the Brewers, who completed a 3-3 homestand.
Jonathan Villar and Hernan Perez added two hits apiece for the Brewers, who out-hit the Phillies 13-12.
--Field Level Media
Philadelphia | Milwaukee | |
Aaron Nola | Player | Chase Anderson |
No Decision | W/L | Loss |
4.1 | IP | 5.1 |
4 | Strikeouts | 5 |
7 | Hits | 5 |
8.31 | ERA | 10.12 |
Philadelphia | Milwaukee | |
Odubel Herrera | Player | Jesus Aguilar |
3 | Hits | 3 |
1 | RBI | 2 |
1 | HR | 1 |
7 | TB | 6 |
.750 | Avg | .600 |
Team | Hits | HR | TB | Avg | LOB | K | RBI | BB | SB | Errors |
Philadelphia | 12 | 3 | 24 | .324 | 17 | 9 | 10 | 5 | 0 | 0 |
Milwaukee | 13 | 3 | 28 | .351 | 24 | 11 | 9 | 7 | 3 | 0 |