The Rangers produced 13 hits against five New York pitchers to win for the sixth time in seven games.
Beltre and Pierzynski drove in two runs each during the Rangers' four-run third inning and Texas fought off the Yankees the rest of the way. Nelson Cruz hit a two-run homer in the seventh and Texas added ninth-inning insurance runs on Lance Berkman's single and Mitch Moreland's sacrifice fly.
Justin Grimm (7-5) collected the victory, giving up three runs on six hits in five innings. Joe Nathan pitched a perfect ninth for his 26th save.
Andy Pettitte (5-6) lost his third straight start after being touched for four runs on six hits in six innings.
Pettitte struck out six, giving him 1,957 strikeouts for his career. That is just one short of the all-time Yankees' record held by Whitey Ford.