It was the third win in a row for the Blue Jays (54-49) after they dropped the opener of the four-game series with the Red Sox (47-55) 14-1 on Monday.
Stroman (6-2) did not allow a hit until Red Sox right fielder Shane Victorino led off the seventh with a soft single to center.
The rookie right-hander struck out seven and allowed two walks to win his second start in a row and his third straight decision over six starts that included three no-decisions.
Francisco, the Blue Jays first baseman, hit a triple and scored a run in the second inning, hit a two-run homer in the third and had a two-run single in the fifth.
The Blue Jays had 14 hits, including three doubles and two RBIs by left fielder Melky Cabrera to complete a 5-2 homestand.
Red Sox right-hander Rubby De La Rosa (3-3) allowed nine hits, two walks and seven runs (six earned) in four-plus innings.
Stroman allowed a walk to his second batter of the game, Victorino, who was doubled off at first on a line drive to first by designated hitter David Ortiz.
Victorino ended the no-hit bid with his single in the seventh. Stroman retired Ortiz on a fly to left and was out of the inning when first baseman Mike Napoli grounded into a double play.
Right-hander Todd Redmond took over in the eighth and allowed a walk. Left-hander Rob Rasmussen took over in the ninth and walked his first two batters before getting a double play grounder from Victorino. Ortiz, the next batter, left the game after he hurt his back or side while checking his swing on ball two. Outfielder Jonny Gomes batted for him and ended the game with a fly to left.
Boston's other runner against Stroman came on a one-out walk to center fielder Jackie Bradley Jr. in the third. Bradley was stranded at second after catcher Christian Vazquez grounded out to third and second baseman Brock Holt struck out.
The Blue Jays scored once in the first on a passed ball charged to Vazquez. It came after the bases were loaded the bases with one out on walks to Cabrera and catcher Dioner Navarro and a single by right fielder Jose Bautista.
Francisco tripled and second baseman Ryan Goins and Cabrera doubled in the second to increase the Blue Jays lead to 3-0.
Francisco hit his 15th homer of the season in the third to put the Blue Jays into a 5-0 lead. Navarro started the inning with a single and was forced at second by third baseman Munenori Kawasaki's grounder to the pitcher.
Francisco drove in two more runs in the fifth with a single against right-handed reliever Burke Badenhop. Francisco's third hit of the day came with the bases loaded after Bautista was hit by a pitch and Navarro and designated hitter Dan Johnson singled to send De La Rosas from the game and bring in Badenhop.
The Blue Jays added a run in the eighth against right-hander Edward Mujica on a single by shortstop Jose Ryes and Cabrera's third double of the game.
NOTES: Red Sox DH David Ortiz hit a three-run homer in the first inning on Wednesday to reach 1,501 RBIs in his 2,067th game. He became the 14th fastest player to reach 1,500 RBIs and is the only active left-handed hitter to reach that plateau. … Blue Jays CF Colby Rasmus did not start Thursday's game against the Red Sox with OF Anthony Gose being used in center field. … The Blue Jays go on the road for their next 10 games starting Friday in New York when LHP Mark Buehrle (10-6, 2.86 ERA) will start against Yankees RHP Hiroki Kuroda (6-6, 3.88 ERA). … The Red Sox open a three-game series at Tampa Bay on Friday and will start LHP Jon Lester (10-7, 2.50 ERA) starting for Boston against LHP David Price (10-7, 3.60 ERA).