HOUSTON, Texas -- Samaje Perine ran for two touchdowns, including a 3-yard score late, to give the Cincinnati Bengals their first road win in more than two years with a 37-31 victory over the Houston Texans on Sunday.
The Texans were driving after Perine's second score when Deshaun Watson was sacked by Sam Hubbard, who forced a fumble that Margus Hunt recovered. The Bengals added a field goal after that to seal the victory.
It's the first road win for second-year coach Zac Taylor and the first time the Bengals (4-10-1) won away from Cincinnati since a 37-36 victory at Atlanta on Sept. 30, 2018.
The Bengals have won two games in a row for the first time this season after upsetting the Steelers 27-17 on Monday night.
The Texans led 31-27 after Darren Fells carried two defenders into the end zone at the end of a 22-yard reception with about six minutes to go.
Perine, who had a season-high 95 yards rushing, gave Cincinnati the lead when he bulled into the end zone for the go-ahead score with less than two minutes to go.
Brandon Allen returned after missing last week's game with a knee injury and threw for a career-high 371 yards with two touchdowns for the Bengals.
Watson threw for 324 yards and three touchdowns and David Johnson ran for a season-high 128 yards and had a rushing touchdown and a TD reception as the Texans (4-11) tied a season high with their fourth straight loss.
Cincinnati took a 27-24 lead on a 48-yard field goal by Austin Seibert early in the fourth quarter.
Perine put the Bengals up 17-10 when he ran 46 yards for a touchdown early in the third quarter. It looked as if he would be stopped early in the run, but he spun away from a defender and cruised into the end zone.
The Texans tied it on a 4-yard touchdown run by Johnson on their next possession. That score was set up by a 38-yard run by Johnson two plays earlier.
Cincinnati regained the lead when rookie Tee Higgins grabbed a 20-yard reception in the corner of the end zone and managed to keep both feet inbounds for the touchdown with about six minutes left in the third.
Their lead was brief as the Texans tied it again on a 2-yard scoring run by Johnson late in the third quarter. Johnson powered that possession with a 48-yard run on the second play of the drive.
The Bengals took an early lead when Allen found Drew Sample wide open for an 8-yard touchdown on their first drive.
Watson threw a 50-yard pass to Brandin Cooks on Houston's next possession to give the team a first down at the 7. But the offense stalled after that and the Texans settled for a 21-yard field goal to cut the lead to 7-3.
The Bengals had a chance to add to their lead in the second quarter, but Seibert's 49-yard field-goal attempt was wide left. He got another chance later in the second and his attempt from 35 was good to give Cincinnati a 10-3 lead.
A 25-yard TD reception by Cooks with two minutes left in the first half tied it at 10 at halftime.
Bengals: CB William Jackson sustained a concussion in the second quarter.
Texans: RG Brent Qvale sustained a concussion second quarter. LT Laremy Tunsil injured his foot in the second quarter and didn't return.
Bengals: Host Baltimore next Sunday.
Texans: Host Tennessee next Sunday.