Ransom connected off reliever Justin Wilson (5-1) for his sixth home run of the season. Darwin Barney and Julio Borbon were on base after the Cubs were held hitless for 5 2-3 innings by Pirates starter Jeff Locke.
Jackson (2-8) had his best and longest outing of the season, striking out eight in seven innings. He allowed four hits and a walk as the Cubs salvaged the finale of a three-game series.
Kevin Gregg pitched the ninth for his seventh save in seven chances, completing a six-hitter.
Chicago manufactured a game-tying run in the sixth before Dioner Navarro got the team's first hit on a two-out single to left.
Ransom's alert baserunning led to the tying run. He went from first to third on an infield grounder and later scored on Scott Hairston's sacrifice fly.
Locke issued a leadoff walk to Ransom in the sixth. Pirates second baseman Neil Walker fielded Anthony Rizzo's grounder in the hole and had to race to the bag to get the putout because first baseman Garrett Jones was out of position trying to field the ball. No one covered third on the play and Ransom took the extra base. After Alfonso Soriano walked, Hairston's sacrifice fly to center made it 1-all.
Pittsburgh took a 1-0 lead in the fourth when Andrew McCutcheon doubled and Jones followed with an RBI single.
Locke was wild all game, walking a season-high seven while striking out six. He left with a one-hitter and the game tied at 1 after 100 pitches in 5 2-3 innings.
Wilson allowed Ryan Sweeney's single in the seventh, and pinch-hitter Borbon bunted into a force at second. Barney singled and Ransom followed with his three-run drive.
The Pirates held the Cubs to two earned runs through the first 23 2-3 innings of the series.