JACKSONVILLE, Fla. -- EJ Manuel followed the worst game of his career with the best.
Call it progress, maturity or resiliency. The Buffalo Bills hope it's a little of each.
The rookie threw two touchdown passes and ran for another score, leading the Bills to a 27-20 victory against the banged-up Jacksonville Jaguars on Sunday.
Manuel bounced back from a four-interception performance at Tampa Bay last week and left his college state with his first win in five road starts.
The former Florida State star didn't do anything spectacular, just dinking and dunking the Jaguars for 193 yards. He also ran for 37 yards, including an 8-yard touchdown in the second quarter. Still, it was his first three-TD game at this level.
"I think that's a part of the maturation as an offense, especially us young guys and the skilled positions," Manuel said.
The Bills (5-9) turned the game twice, once at the end of the first half and again in the fourth quarter.
Buffalo scored 10 points in the final 2:14 before halftime, taking a 20-10 lead into the locker room. The Jaguars (4-10) rallied to tie it in the fourth, evening the score on Chad Henne's 13-yard TD pass to Marcedes Lewis.
Manuel answered, though, capping an 89-yard drive with a 1-yard TD pass to fullback Frank Summers. With it, Manuel set the franchise's rookie record for touchdown passes with 11.
"He learns from snap to snap," Bills coach Doug Marrone said. "You're seeing a quarterback that's involved in a process that's getting better and better. We've seen times when he's played very, very well."
The Jaguars were in position to tie things up late, but a series of miscues proved costly. On first-and-goal from the 1, they lost 4 yards on Jordan Todman's run wide. Henne followed with two horrible throws, one receiver Mike Brown batted down to prevent an interception and another one Stephon Gilmore picked off in the end zone with 3:15 remaining.
Henne said he threw the pass to Brown because he was being held and expected a flag.
It never came.
"You've got to throw it or they're not going to see who the receiver is," Henne said. "If you don't throw it, they don't call it. My job is to throw it where he's supposed to be and obviously they didn't see it."
Still, the Jaguars had one final shot, getting the ball back with 1:46 remaining, but failed to pick up a first down.
Henne was sacked for the fifth time on the final drive, giving Buffalo an NFL-leading 49. That also tied the franchise record set in 1995.
"We've been in these types of games throughout the year and have come up on the short side of it," Marrone said. "I give the players credit for hanging in there today because we came up on the side we want to be on."
The Bills had lost five of their last six, including three in a row on the road.
Jacksonville, meanwhile, had its three-game winning streak come to an end.
"It was a game of missed opportunities," Jags coach Gus Bradley said. "We didn't play like we're capable of playing, whether it was a fumble, interception, things like that. In the locker room, our hearts are broken right now because of this, but I felt like our spirit is not."
Few outsiders gave Bradley's team a chance because of the injuries. Things got worse when backup guard Michael Brewster broke his left ankle in the first half.
Along with Henne's late interception, the play Jacksonville will point to is Denard Robinson's fumble near the goal line early in the third. Aaron Williams knocked the ball loose for the Bills, and it rolled through the end zone for a touchback.
"Definitely a bad taste in your mouth after the performance out there as a team today," Jaguars left tackle Cameron Bradfield said.
"This game just shows how good EJ can be," Jackson said. "He had a rough game last week. It was something he put on himself that he has to play better. He came out and did that. "
Both teams were officially eliminated from playoff contention with Miami's win. ... Bills DT Marcell Dareus (ankle) and SS Williams (ribs) left the game. Marrone had no update on either starter. ... Jaguars LB Geno Hayes left the game twice with injuries, but returned both times.
Former Auburn OT Shon Coleman joins The Paul Finebaum Show to discuss overcoming his battle with cancer and being drafted by the Cleveland Browns.
Glenn 'Goose' Gronkowski, a rookie free agent signee with the Bills, tells Buffalo radio station that older brother Rob's cruise might not sail again.
The Rams have four players on the list of 50 future top-sellers of licensed merchandise.
Emmanuel Sanders went undercover as a reporter, and somehow the questions often circled around to the Broncos receiver himself.
The Seahawks have put running back Marshawn Lynch on the reserve/retired list, making official what was implied in February when Lynch indicated he was ready to end his football career.
The Eagles have released two more players from their roster in order to create space for the undrafted rookies they've signed.