Gionta, who scored late in the first, set up Scott Gomez's shorthanded goal early in the third to draw Montreal even at 2.
Guillaume Latendresse put the Canadiens ahead 3-2 with his first goal at 7:22.
Gionta made it a two-goal lead with his second goal of the game at 9:47 when he put Mike Cammalleri's return pass beyond John Curry from the slot.
"I would have taken a backhand right in the goalie's pads," Gionta said about Cammalleri's decision to pass instead of shooting. "He's sitting right on top of the crease, just stopped there and waited. That's a lot of patience right there."
Carey Price made 28 saves as Montreal improved to 3-2.
Sergei Gonchar, Evgeni Malkin and Bill Guerin scored for Pittsburgh, which fell to 1-2.
Curry stopped 24 shots.
"The shorthanded goal at the start of the third really was a difference maker in the game," Penguins coach Dan Bylsma said. "We had 2:55 on the power play, a goal there would have put the game largely in our favor but they get that goal, they get momentum and then we make a couple more detail mistakes and they get the advantage. That stresses the importance of the details of the game."
Latendresse backhanded a Maxim Latendresse rebound past Curry to put Montreal ahead at 7:22, and Gionta got his second of the game 2:25 later to make it a two-goal lead.
Gionta was credited with five shots in the opening period, including four in quick succession that led to his second preseason goal. He took three whacks in a row from the edge of the crease before pushing home a rebound of Spacek's slap shot from the right point.
Gonchar got credit for his first preseason goal 3:27 into the second when his point shot through traffic was redirected past Price.
Malkin, the league's leading scorer last season in both the regular season and playoffs, got his first goal at 7:28 when he took Ben Lovejoy's cross-ice pass and beat Price with a shot inside the left post.
Guerin scored at 16:46 of the third to draw Pittsburgh within one.
|Brian Gionta (1) Wrist shot - ASST: NONE|
1 - 0 MTL
|Brian Gionta (2) Wrist shot - ASST: Jaroslav Spacek (1), Andrei Markov (1)|
2 - 1 PIT
|Sergei Gonchar (1) Wrist shot - ASST: Brooks Orpik (1), Craig Adams (1)|
1 - 1 Tie
|Evgeni Malkin (1) Wrist shot - ASST: Ben Lovejoy (1)|
2 - 1 PIT
|SHG - Scott Gomez (1) Tip-in - ASST: Brian Gionta (1)|
2 - 2 Tie
|Guillaume Latendresse (1) Backhand shot - ASST: Maxim Lapierre (1), Andrei Kostitsyn (1)|
3 - 2 MTL
|Brian Gionta (3) Wrist shot - ASST: Mike Cammalleri (1), Andrei Markov (2)|
4 - 2 MTL
|PPG - Bill Guerin (1) Wrist shot - ASST: Kris Letang (1)|
4 - 3 MTL