Pujols and Mike Trout drove in two runs apiece, Jered Weaver pitched seven strong innings, and the Angels completed a perfect homestand with a 6-4 victory over the Minnesota Twins on Thursday.
Pujols had three hits and Josh Hamilton drove in a run to help the Angels win their season-best sixth straight and move a season-high 11 games over .500 (44-33).
''We've been playing really good the past couple of weeks,'' Pujols said. ''You just need to take advantage of a stretch. It doesn't matter where you win as long as you get those wins. We're playing great at home, but we'll take them in any stadium.''
Trout had two doubles, including a two-run drive down the left-field line in the seventh, during the Angels' 15th win in their last 17 games in Anaheim, where they have the majors' best home record. Los Angeles swept Texas and Minnesota to complete its first unbeaten homestand with at least six games since May 2004.
''We're starting to do some of the things we can do on the offensive side, and we've got to keep it rolling,'' Angels manager Mike Scioscia said. ''Albert, when he's swinging it well, he's going to square balls up like that. He got some big hits and got us going.''
Weaver (8-6) yielded eight hits - all singles - and struck out six in another dominant start against the Twins. The right-hander, who threw a no-hitter against Minnesota in 2012, has given up one run in 24 innings while striking out 24 in his last three home meetings with the Twins.
Weaver improved to 7-0 in eight career starts against Minnesota, striking out the side on 12 pitches in the first inning and rarely struggling until the sixth. He snapped a three-start winless streak with plenty of offense from his teammates, who scored 35 runs on the homestand.
''Offensively, we didn't do too much,'' Minnesota manager Ron Gardenhire said. ''Weaver was like we've seen him before. In this ballpark, we all know it's tough to see the ball in day games, and he made it tough on us.
After Minnesota loaded the bases against Ernesto Frieri in the ninth, Mauer cleared them with a two-strike double off Joe Smith, who then struck out Kendrys Morales for his seventh save.
Joe Mauer hit a three-run double with two outs in the ninth for the Twins, who followed up a four-game sweep of the White Sox by getting swept in Anaheim. Mauer and Chris Parmelee had three hits apiece, but Minnesota yielded 32 hits in the three-game series.
''They've got some good hitters,'' Gardenhire said of the Angels. ''Those big boys come up in big situations, and they can do some things.''
Ricky Nolasco (4-6) yielded 11 hits and six runs while pitching into the seventh inning of his fourth straight winless start.
Pujols improved to 12 for 22 in his career against Nolasco on an eventful day for the Angels' slow-moving $240 million man.
He singled home Kole Calhoun in the first inning and stole second when Minnesota didn't hold him on the bag. Pujols then scored when Pedro Florimon lost Erick Aybar's popup in the sun behind third base.
Florimon is filling in for rookie shortstop Danny Santana, who injured his left knee while running out a double in Wednesday's loss. An MRI exam Thursday revealed a bone bruise in Santana's knee, but the Twins don't know how long he'll be out.
The Angels added two more runs in the third on back-to-back doubles by Trout and Pujols, followed by Hamilton's RBI single.
NOTES: Pujols' third-inning double was the 541st of his career, tying the three-time NL MVP with Rogers Hornsby for 30th on baseball's career list. ... Angels 2B Howie Kendrick has a 10-game hitting streak. ... Minnesota recalled INF Jorge Polanco from Single-A Fort Myers. The 20-year-old prospect joined the Twins in time for Thursday's game and made his major league debut as a pinch-hitter in the ninth inning, drawing a four-pitch walk from Frieri.