Playing in place of the injured Chris Davis, Pearce -- who entered the game 1-for-7 -- turned in his first three-hit contest since June 9.
"Stevie gave us a real lift," manager Buck Showalter said. "Made a couple nice plays at first, too. Stevie was a big contributor. Great example of players having an opportunity of deciding where they want to play. He wants to play [here]. We're thankful."
The performance capped what has been a whirlwind week-and-a-half span for Pearce, who was designated for assignment, released and placed on outright waivers, where he rejected a claim to become a free agent. Baltimore, which only made the move out of necessity for another pitcher, had always liked Pearce. Davis' oblique injury made the club's interest deepen, and Pearce saw the opportunity to contribute for an organization for which he has loved playing, signing up for a third go-round with the O's, who were able to forgo a 30-day wait period because they already had an open roster spot.
"I don't know if you'll ever see it again," Showalter said of the unusual nature in which Pearce came back. "Maybe in Baltimore. They like playing with each other. It's a testament to the culture those guys have created for each other."
The Orioles, stifled early by Pirates starter Charlie Morton, got things going after a 21-minute rain delay prior to the fifth inning, scoring three runs and working the righty for 32 pitches. Morton gave up a leadoff single to Delmon Young -- the O's second hit of the day -- and Steve Clevenger worked a walk to give way to a textbook bunt from shortstop J.J. Hardy. Hustling third baseman Pedro Alvarez put an errant throw on the bunt to load the bases with no outs.
Pearce struck first with a single to left field -- his second of the game -- to tie the score at 1, and Ryan Flaherty followed with a two-run hit into left field. Morton reloaded the bases, intentionally walking Nick Markakis, but the O's couldn't add on, as Adam Jones bounced into an inning-ending groundout.
Pearce drove in another run in the following frame, scoring Clevenger -- who reached on the Bucs' second error -- to chase Morton from the game.
"It says that he knows how to hit. It says that he is a competitor," starter Bud Norris said of Pearce stepping in so well. "He has been through this process before, and the transactions and everything else. It just gives him the capability to go out and play. He knows that he wants to be here, as we all can see. And it was just really good to see him have three hits and the RBIs, and I'm sure he is smiling right now."
Norris (2-2) picked up the win, scattering seven hits, three strikeouts and a walk over 5 1/3 innings. He allowed his lone run in the third inning but escaped any further damage when he got Neil Walker to ground out to strand a pair of runners. The inning started on Jose Tabata's triple; he scored on Alvarez's second single of the game, a two-out hit that Norris followed by getting Walker to bounce a ball to Pearce.
"I've seen plenty of that lineup with my days in the NL Central, with Houston," Norris said. "I know that lineup. Clevenger knows it as well from playing in Chicago. I didn't have all my pitches working, but at times I did when I needed it and made some really good pitches, and they hit some balls right at guys, which is part of the game. It was kind of one of those weird days, eerie days, but it was a big win for us, and let's hope we get another one right now."
Norris was replaced by righty Ryan Webb, who induced a pair of flyouts to strand two runners before handing the ball to Zach Britton in the seventh. Britton, Darren O'Day and Brian Matusz bridged to closer Tommy Hunter, who picked up the save.
"When you're off six days like Bud was ... and [for the] bullpen to pitch that well after that much time off is a real testament to the work they put in during the rainouts and what have you," Showalter said. "This is weird, just strange. You play five day games in a row and then day, night, day, night, day, night, 11 a.m. game after night games, and then two rainouts, three days off. ... We had our All-Star break.
"To come out and pitch that well, I wouldn't say it's surprising, [but] there's an excuse there if you're willing to use it."
Markakis pushed the lead to four in the seventh with his first home run of the season, off reliever Jeanmar Gomez.