Cuddyer accomplished the feat in the seventh inning of a 10-3 win over the Royals at Kauffman Stadium.
"I don't think I've ever had two hits in one inning," said Cuddyer, whose two long balls highlighted an eight-run seventh.
The first homer -- a first-pitch solo shot off Royals starter Brian Bannister -- gave the Twins a 2-1 lead.
"He started me off the at-bat before with a curveball," Cuddyer said. "So I was looking something soft, and I was able to get a curveball and I didn't miss it."
The second was a two-run, 427-foot blast to left off reliever Kyle Farnsworth that stretched the Twins' lead to 9-1.
"I can't really tell you I was looking for anything in particular," Cuddyer said. "I just saw a pitch and reacted to it."
Cuddyer, who now has 22 homers this season, became the 53rd player in Major League history to hit two home runs in the same inning. David Ortiz did it last year on Aug. 12, while Jim Edmonds, who did it last June 21 for the Cubs, was the most recent National League player to do it.
Still, out of all the 52 players that did it before Cuddyer, none of them were playing for the Twins.
"A lot of people have come through this organization," Twins manager Ron Gardenhire said. "So that's pretty special."
Cuddyer, who finished 3-for-5 with three RBIs, had one more at-bat in the top of the ninth, and the many Twins fans in attendance gave him a nice round of applause as he walked to the plate.
Cuddyer flied out to right, but in the end, it didn't matter.
"Obviously it was a very special day," Cuddyer said. "A very special scenario that happened. And we got the win on top of that. It's a pretty good day."