ARLINGTON — Nate McLouth's two-run home run keyed Baltimore's four-run fifth inning and the Orioles held off the Texas Rangers 5-3 Tuesday. Chris Tillman (6-2) gave up three runs on six hits and struck out seven and walked one in 6 2-3 innings before giving way to the Orioles' bullpen, which now has a 1.57 ERA in the last 18 games. Jim Johnson worked a scoreless ninth to pick up his 38th save. Manny Machado had a run-scoring triple and J.J. Hardy also drove in a run with a double in the fifth against Scott Feldman (6-9). Max Scherzer struck out eight in seven impressive innings, and the Detroit Tigers took advantage of Ricky Romero's wildness in a victory over the Toronto Blue Jays. Romero (8-11) lost his 10th straight decision, allowing five runs, seven hits and eight walks in 5 1/3 innings. He didn't strike out a batter. Royals 1, Rays 0: Eric Hosmer's two-out single in the 10th inning drove in the only run in Kansas City's victory over Tampa Bay in a classic pitchers' duel between the Royals' Luke Hochevar and the Rays' David Price. The run off Joel Peralta (1-5) was unearned after an error on Tampa Bay shortstop Ben Zobrist. Jeff Francouer scored the run after his single preceding Zobrist's throwing error. Angels 5, Red Sox 3: Mark Trumbo hit his career-high 30th homer, Ervin Santana pitched 6 1/3 solid innings and the Los Angeles Angels snapped a four-game losing streak with a win over the Boston Red Sox. Mike Trout had two hits, giving him 139 in the first 100 games of his rookie season, the most since 1964 when Tony Oliva had 144 for Minnesota. Kevin Youkilis hit a grand slam, Paul Konerko homered and Dewayne Wise had four hits as the Chicago White Sox rallied for the second straight game to beat the New York Yankees. Chicago, which fell behind 3-0 in Monday night's opener before winning 9-6, trailed 2-0 after one inning Tuesday in the matchup of division leaders. In other games it was: Oakland 4, Minnesota 1; Seattle 5, Cleveland 1. — Agencies