Roberts singled in the first, struck out in the third, singled in the fourth, hit a sac fly to right in the sixth and singled in the eighth. It was his first major league game since May 16, 2011.
Mark Reynolds hit a two-run homer, his fourth of the year, to give the Orioles a 2-1 lead in the second. Adam Jones had three hits, including an RBI single in the third and a solo homer in the fifth. It was Jones' 18th homer.
Jones is now 7-for-10 since ending an 0-for-18 stretch.
The Orioles cooled off a hot Pirates club which was looking for its first five-game winning streak since September 2010. Pittsburgh had won 12 of its last 15 games entering this series and has won its last five series for the first time since 1992.
Winning pitcher Wei-Yin Chen improved to 6-2, throwing 6.1 innings and allowing four earned runs on eight hits. Chen registered four strikeouts and only two walks to put the Birds nine games over .500.
The Orioles have now won five of their last seven games and six of nine since they went through a 2-9 stretch over 11 games. They improved to 35-26 on the year, 17-14 at home and 5-2 in interleague games.