BALTIMORE -- Winless with a 7.06 ERA in June, Daniel Cabrera happily flipped the calendar with another dominant performance against the Kansas City Royals.
Cabrera pitched a seven-hitter to earn his first victory since May 20, Aubrey Huff homered and the Baltimore Orioles beat Gil Meche and the Royals 5-2 Wednesday night.
Cabrera (6-4) retired 13 straight batters before David DeJesus singled with two outs in the eighth inning. The right-hander struck out two and walked none in his second complete game of the season, both of which have come against the Royals.
His performance was a stark contrast to his five starts in June, when he went 0-3 and never got past the seventh inning.
"It's great. It's a new month," Cabrera said. "It's good to have a good game. It's been a long time since I had one like that."
One night earlier, Orioles manager Dave Trembley told Cabrera two things: that he should forget about June, and that he needed to go deep into the game to give the weary bullpen a much-needed rest.
Going against a team he's dominated since entering the league in 2004, Cabrera delivered. He's 5-0 with a 2.21 ERA lifetime against Kansas City, and the Orioles are 8-0 in his eight career starts against the Royals.
"Well, you're probably not going to see Cabrera pitch any better than he did tonight," Trembley said. "He had command. He got groundballs and he got great defense behind him. His poise was outstanding."
Royals right fielder Mark Teahen, who went 0-for-4 with a strikeout, said of Cabrera: "He got ahead in the count and was pitching strikes. Nothing amazing, but he didn't hurt himself. He's made an adjustment this year to where he's not throwing as hard, but he's throwing strikes. More effective than in past years."
Meche (6-9) allowed five runs, four earned, and nine hits in six innings. The right-hander had won three straight starts and was unbeaten since June 5, but he's winless at Camden Yards in 10 career starts.
"I was horrible. I struggled. One of those days when you're not pitching good," Meche said. "Two years in a row I've pitched here and given up a ton of hits. Just a bad outing."
Ramon Hernandez had three hits for the Orioles, who improved to 5-2 against Kansas City to clinch the season series for a fifth consecutive year.
Back in the leadoff spot for the Royals after missing two games with a bruised rib cage, DeJesus went 3-for-4 with a home run in extending his hitting streak to 14 games. He's batting .421 with 15 RBI during that span.
DeJesus opened the game with Kansas City's first leadoff homer since Aug. 17, 2006, when he connected against the Chicago White Sox. In the bottom half, Brian Roberts hit his AL-high 31st double and Huff took over the team lead in home runs with his 15th, a two-run shot to right on an 0-2 pitch.
"They get off to a 1-0 lead, and obviously in the first inning we got Daniel the lead tonight and gave him some run support," Huff said. "He was really able to settle in."
After Joey Gathright singled and scored on a double-play grounder in the Kansas City third, Luke Scott hit an RBI single in Baltimore's half for a 3-2 lead.
The Orioles made it 5-2 in the fifth. Roberts drew a leadoff walk and Gathright robbed Nick Markakis of a home run by getting his glove on a drive to center with a leap at the wall. But Gathright couldn't hold onto the ball, and Markakis ended up on third, credited with a double after Teahen was given an error for fumbling the loose ball.
"It was a great effort. It would have been greater obviously if he would have been able to pull it back in," Royals manager Trey Hillman said.
Said Teahen: "Pretty unbelievable. Wish he had some pine tar in his leather so it would have stuck. I didn't pick it up and then I kicked it. It's a play you don't work on very much."
Two batters later, Hernandez singled past the drawn-in infield.
That was more than enough offense for Cabrera, who needed 105 pitches to get through his sixth career complete game.
"He's an aggressive pitcher. He's going to come at you, he's going to try to get you to put the ball in play early in the count," said Hernandez, Baltimore's catcher. "He wants to get quick outs. I think that's what he did tonight."
Cabrera has allowed 15 HRs, tied for the team lead. But he has both of Baltimore's complete games this season. ... Kansas City has lost 11 of 13 at Camden Yards. ... The game was played in a brisk 2 hours, 16 minutes.