Rob Refsnyder had three hits for the Blue Jays, who gained a split of the first two games of the three-game interleague series.
Jordy Mercer hit his 11th home run of the season for Pittsburgh in the ninth inning off Leonel Campos.
Rowley (1-0), a West Point graduate, allowed five hits, one walk and one run while striking out three in 5 1/3 innings.
Pirates starter Trevor Williams (5-5) allowed four hits, four walks and four runs (three earned) in six innings. The right-hander struck out seven and both batters he hit with pitches scored.
Toronto scored once in the first after Jose Bautista walked, took third on a single by Justin Smoak single and scored when Steve Pearce hit a fielder's choice grounder to second.
The Pirates (58-59) tied it in the second on a leadoff triple by Josh Bell and an RBI single by Mercer.
The Blue Jays (55-61) regained the lead in the bottom of the second. Kevin Pillar was hit by a pitch to lead off, Rob Refsnyder singled and Bautista and Josh Donaldson walked to force in a run.
Toronto scored two runs (one unearned) in the fifth keyed by an error by second baseman Adam Frazier.
Bautista was hit by a pitch to start the inning. Donaldson blooped a single to right and, with one out, Pearce walked. Pinch hitter Kendrys Morales grounded to shortstop and Pearce was forced at second as one run scored. Frazier made an errant throw to first and the second run scored.
Rowley was removed with one out in the sixth inning after allowing a single and a walk. Dominic Leone replaced him and finished the inning with a strikeout and a groundout to the catcher.
Leone pitched around a single in the seventh, finishing the inning with two strikeouts.
The Blue Jays scored three runs (one earned) in the bottom of the seventh against Joaquin Benoit.
Smoak and Pearce singled. Both scored on a throwing error by third baseman Josh Harrison, who barehanded a soft grounder by Mike Ohlman and threw wildly to first.
Ohlman, who was given credit for an infield single, continued to third on the error and scored on Pillar's sacrifice fly and Toronto led 7-1.
Toronto's Aaron Loup allowed a walk and a single in two-thirds of an inning in the top of the eighth that Ryan Tepera finished with a strikeout.
Pittsburgh's A.J. Schugel allowed only a single in the bottom of the eighth.
NOTES: Pittsburgh RF Gregory Polanco left the game during the fifth inning, limping off the field after charging a bloop single. ... Toronto C Russell Martin (strained left oblique) went on the 10-day disabled list Saturday and C Mike Ohlman was selected from Triple-A Buffalo. ... Toronto RHP Chris Rowley was selected from Triple-A Buffalo to make the start Saturday, while RHP Chris Smith and INF/OF Chris Coghlan were designated for assignment. ... Pirates CF Andrew McCutchen (left patellofemoral discomfort) was not in the lineup Saturday after leaving the game Friday in the third inning. OF Starling Marte started in center field. ... Toronto 3B Josh Donaldson was used as designated hitter and Darwin Barney played third base on Saturday. ... Pittsburgh RHP Chad Kuhl (5-7, 4.53 ERA) will oppose Blue Jays LHP J.A. Happ (5-8, 3.77) Sunday in the series finale.