Both starters allowed only one run over seven innings, and the Blue Jays got the tiebreaking hit in the eighth when Edwin Encarnacion had a two-run double.
"He was tremendous, he really was. You could kind of see that building," Blue Jays manager John Gibbons said of Rogers. "He's really taken to it."
And the Blue Jays easily could have skipped Rogers (2-2), who was supposed to start Wednesday night's game at the Chicago White Sox that was postponed because of inclement weather. Instead, they just pushed back the entire rotation.
"They give me that confidence," Rogers said. "Yesterday after the game, we sat down at my locker and they talked to me, that I'd pitch tomorrow. I just went back to my room and thought about how I pitched the last time I pitched against the Rangers and let me go on the attack."
Casey Janssen worked a perfect ninth for his 14th save.
The slumping Rangers wasted another solid outing by Darvish, who has made five consecutive starts without a victory.
"I'm not amazed," Darvish said through his interpreter. "This is baseball. Anything can happen."
Darvish allowed only three hits and walked two, but threw 110 pitches to get through seven innings.
Since his last victory May 16 against Detroit, Darvish lost 1-0 to Oakland and has now gone four games in a row without getting a decision. The right-hander has a 2.08 ERA with 41 strikeouts in those 34 2/3 innings over those five games, but the Rangers have scored only seven runs for him in that same span -- and four of those runs came in the same game.
"Some games you get a lot of run support. Others you don't," he said. "I'm not really surprised by it."
Nelson Cruz homered for the Rangers (38-28), who have lost three in a row at home. They have dropped eight of 12 overall, falling out of first place in the AL West and two games behind Oakland.
The Athletics (41-27), who play four games in Texas next week, have won 21 of their last 26 games. They capped a three-game series sweep of the New York Yankees with a 3-2 win in 18 innings earlier Thursday.
Neal Cotts (2-1) replaced Darvish to start the eighth, when Emilio Bonifacio reached on a throwing error by Gold Glove third baseman Adrian Beltre. Munenori Kawasaki had a sac bunt before Tanner Scheppers, the second reliever, walked Jose Bautista before the double to left-center by Encarnacion broke the 1-all tie.
"Yeah, big hit," Gibbons said. "Jose's big at-bat before that and (Bonifacio) getting it started and a nice sac bunt, we played well."
Rangers center fielder Leonys Martin made a diving attempt to catch the game-deciding hit. He was fully extended when the ball went under his glove.
Martin sprained his left wrist after his gloved hand rolled awkwardly when he hit the ground. The Rangers said X-rays were negative, and said he was day to day with a mild sprain.
"Just hurts a little bit, but I don't think it's too serious," Martin said through a translator. "I had to run a lot and unfortunately, it was a great hit and I didn't get it."
After Cruz homered in the second, Toronto got even in the third, when Bonifacio had a leadoff single.
Bonifacio then stole second, sliding headfirst with his hand stretched out to the base just ahead of the tag. Manager Ron Washington came out to discuss the call with second-base umpire Paul Schrieber -- television replays showed the ump got the call right. Bonifacio scored on a single by Melky Cabrera.
Darvish retired 14 of the last 15 batters he faced after that, including the last 10.
Rogers also retired 10 in a row around the same stretch, a streak that ended when Cruz had a two-out single in the seventh. But Rogers quickly got the third out and had thrown his last pitch when the Blue Jays went ahead.
He had pitched 3 1/3 innings his first start, and then allow one run in four innings against the Rangers last weekend.
"I'm awful proud to get the opportunity," Rogers said. "It doesn't matter where I'm going to be, I'm going to do my best everywhere."
Blue Jays manager John Gibbons, a former Mets player and minor league manager, was named Thursday as one of the AL coaches for the All-Star game next month at Citi Field in New York. ... Toronto had double plays to end each of the first two innings, including right fielder Bautista doubling off Chris McGuiness at first base in the second.