Abreu has been a better hitter than Beltran for years. I'm sorry, but Beltran having more HRs doesn't make up in my mind the advantage Abreu has had in batting average, on base, and OPS. Add into that the fact that Abreu is now in a big hitter's park, Beltran's in a big pitcher's park, and Abreu is having the green light with Beltran's light red, I think it's Abreu in a wash.
And I'm not fickle when it comes to this issue. I've always sided with Abreu. I was never high on Beltran aside from roto leagues as a first rounder. In fact, I made every draft with a chance to get Beltran and usually passed on him for other guys like Todd Helton and Manny Ramirez. I just don't consider Beltran a difference maker with the bat like other sluggers are. His value comes in steals. Even last year, when people got major power from him, his average was way down. Until he goes a year at .300, 40, 120, 20 SB or more, I will not begin to consider him better than Abreu