The Browns temporarily stopped another season from slipping away.
Baker Mayfield threw a 7-yard touchdown pass to Rashard Higgins with 1:44 left as Cleveland snapped a four-game losing streak — and took some pressure off first-year coach Freddie Kitchens — with a 19-16 win on Sunday over the Buffalo Bills.
‘‘We needed to have that,’’ Mayfield said.
With Kitchens under fire and their playoff hopes fading fast, the Browns (3-6) rallied for a win at home that kept their season from completely collapsing.
Not easy. Not pretty. Welcomed.
‘‘This is a good start for us,’’ said star receiver Odell Beckham Jr., who had five catches for 57 yards. ‘‘We got a tough win against a very good team.’’
Cleveland survived more problems in the red zone but sealed the much-needed victory when Buffalo kicker Stephen Hauschka’s 53-yard field-goal attempt was short with 22 seconds left. Earlier, Hauschka missed a 34-yarder.
Quarterback Josh Allen had two touchdown runs for the Bills (6-3), who were off to their best start since 1993.
Mayfield finally delivered a clutch drive after Allen’s 1-yard sneak put the Bills ahead, 16-12.
On second-and-goal, he threaded his TD pass to an open Higgins, who had been suspiciously missing from Cleveland’s game plan this season after being one of Mayfield’s favorite targets last season. It was Higgins’s only catch.
‘‘I had a dream I scored and it happened,’’ said Higgins. ‘‘Not like that — the game-winner. In my dream, I woke pretty quickly. I don’t know how it ended.’’
Mayfield had his second straight solid game, completing 26 of 38 passes for 238 yards and two TDs. He didn’t throw an interception for the second week in a row.
However, Cleveland struggled again to complete drives as the Bills stopped them on 12 plays inside the 3-yard line, holding Cleveland to 3 points.
‘‘We had the big goal-line stand, but at the end of the day when the game is in your hands and you figure the defense is the bell cow of your team, we had to come up with a play to stop them,’’ Bills linebacker Lorenzo Alexander said.
Browns running back Kareem Hunt made his debut for Cleveland and picked up 74 combined yards. The 24-year-old was eligible after completing an eight-game NFL suspension for two violent acts, including shoving and kicking a woman while he played for Kansas City.
‘‘There are not enough words to tell how I felt being back out there,’’ Hunt said. ‘‘I was thankful, sad. A couple times, I thought I was going to shed a tear. It’s really good to be back home with the Browns. Any time I get an opportunity to make a play, I’m going to do it.’’
Nick Chubb rushed for 116 yards on 20 carries for the Browns, and Jarvis Landry had nine catches for 97 yards and made a crucial catch on Cleveland’s game-winning drive.
The Bills’ defense tied it, 9-9, early in the third as linebacker Tremaine Edmunds sacked Mayfield in the end zone for a safety. The Browns were in an empty backfield and didn’t account for blocking Edmunds, who came in untouched off the left side and quickly wrapped up Mayfield.
Buffalo’s defense stopped the Browns on eight straight plays at the 1 — the equivalent of two goal-line stands — in the first quarter. The Bills stuffed Chubb on five carries, and Buffalo overcame a pair of pass interference calls in the end zone while keeping the Browns out of the end zone and off the scoreboard.
Allen’s 10-yard quarterback draw — his fifth rushing TD this season — gave the Bills a 7-6 lead in the second quarter.
The Browns again got deep in Buffalo territory but were denied on three plays from the 3-yard-line. Kitchens decided to go for it on fourth down, but then changed his mind when right tackle Chris Hubbard was called for a false start.
The penalty pushed Cleveland back and the Browns settled for Austin Seibert’s 27-yard field goal to go up, 9-7.
Mayfield delivered a back-shoulder strike to Landry for his first TD, completing an effortless, efficient, game-opening 75-yard drive for the Browns, who finally had all their offensive pieces with Hunt back.
Landry, though, was called for taunting cornerback Levi Wallace after the score and Austin Seibert missed a 48-yard PAT.
Ravens 49, Bengals 13 — Lamar Jackson threw for three touchdowns in a near-perfect passing performance and added a sensational 47-yard scoring run, Marcus Peters got his third pick-6 of the season, and Baltimore (7-2) followed its eye-opening thrashing of the Patriots by quickly pulling away in Cincinnati (0-9), the NFL’s last winless team. Jackson finished 15 of 17 — a club-record completion percentage — for 223 yards and a perfect passer rating of 158.3, his second of the season. The AFC North leaders have won five in a row for the first time since 2013. The Bengals benched Andy Dalton during their bye and turned to fourth-round pick Ryan Finley; in addition to the pick-6, Tyus Bowser returned a Finley fumble 33 yards for another touchdown in the third quarter. Finley finished 16 of 30 for 167 yards.
Dolphins 16, Colts 12 — Ryan Fitzpatrick scored on an 11-yard run in the first half and Miami (2-7) made a late stop to preserve a victory in Indianapolis. With starting quarterback Jacoby Brissett out because of an injured left knee, the Colts (5-4) gained just 300 total yards and Brian Hoyer was picked off three times, with Miami scoring 13 points off those turnovers. Yet, the Colts had four chances to take the lead in the final minute from the Miami 16. Hoyer threw incompletions on the first three plays, and hooked up with Eric Ebron for 8 yards on fourth-and-10, sealing the decision.
Vikings 28, Cowboys 24 — Dalvin Cook ran for 97 yards, including the go-ahead touchdown on fourth down, and had another 86 yards receiving to set up three other scores as Minnesota (7-3) beat a winning team on the road for the first time in almost two years. Amari Cooper had the most circus catches on a night full of them, including a toe-tapping TD to give Dallas (5-4) its only lead in the third quarter. Dak Prescott threw for 397 yards and three touchdowns, but his potential game-winning drive petered out in the red zone and a final Hail Mary was intercepted. Kirk Cousins threw for two touchdowns, both to Kyle Rudolph, for just his second victory in nine prime-time road games.
Steelers 17, Rams 12 — Host Pittsburgh (5-4) forced four turnovers — including a 43-yard fumble return for a touchdown by safety Minkah Fitzpatrick — and held the Los Angeles offense essentially silent, the only touchdown for the Rams (5-4) when linebacker Dante Fowler returned a fumble 26 yards on the second snap of the game. Los Angeles was 1 for 14 on third down, and leading receiver Cooper Kupp didn’t have a catch. Mason Rudolph completed 22 of 38 passes for 242 yards with a touchdown for the Steelers, who were stymied themselves by a handful of drops, but who have won four straight and have produced 26 turnovers in nine games.
Jets 34, Giants 27 — Le’Veon Bell scored a go-ahead 1-yard touchdown early in the fourth quarter after a 33-yard pass interference penalty, and the Jets (2-7) rallied to earn Big Apple bragging rights in East Rutherford, N.J. Sam Darnold threw a touchdown pass to Jamison Crowder and ran for another score, and Jamal Adams scored on a 25-yard fumble return on a strip-sack, the third straight game Daniel Jones had a fumble returned for a touchdown. The QB did throw a career-high four touchdown passes for the Giants (2-8), who’ve lost six straight for the first time since 2014. Saquon Barkley had the worst game of his young career, finishing with just 1 yard on 13 carries. He was seen going to the X-ray room after the game, but wouldn’t discuss it.
Packers 24, Panthers 16 — Preston Smith and Green Bay’s defense stopped Christian McCaffrey at the goal line as time expired, and the Packers (8-2) barely held off Carolina (5-4) at a snowy Lambeau Field. Aaron Jones scored three rushing touchdowns for the second time this season to lead the hosts, who had to hold on after the Panthers got the ball back with 2:25 left on their own 11-yard line. Quarterback Kyle Allen drove Carolina, converting a 4th-and-10 with a 12-yard pass to D.J. Moore, and another fourth down on an offsides penalty with 13 seconds remaining. Aaron Rodgers was held out of the end zone, but the two-time MVP completed 17 of 29 passes for 233 yards, including 118 yards to Devante Adams. McCaffrey had a relatively quiet 108 yards and a touchdown on 20 carries.
Buccaneers 30, Cardinals 27 — Jameis Winston threw for 358 yards and one touchdown, helping host Tampa Bay (3-6) snap its four-game losing streak with a 92-yard, game-winning drive Winston put together after the Bucs ended Kyler Murray’s NFL rookie record streak of 211 consecutive pass attempts without an interception. Peyton Barber’s 1-yard TD run with less than two minutes left was set up by a booth review that determined Cardinals safety Jalen Thompson committed pass interference against Mike Evans in the end zone. Murray threw for 324 yards and three scores, but Arizona (3-6-1) hurt its chances by losing a fumble for the first time all season.
Bears 20, Lions 13 — Mitchell Trubisky tied a season high with three touchdown passes, and host Chicago (4-5) withstood a late charge by Jeff Driskel, who filled in at quarterback when the Lions ruled out Matthew Stafford hours before kickoff because of hip and back injuries. It was the first time Stafford missed a regular-season game since 2010. Chicago punted on its first four possessions, but scored two touchdowns early in the third quarter and hung on to hand Detroit (3-5-1) its fifth loss in six games. Driskel threw a 47-yard touchdown pass to Kenny Golloday with 5:53 remaining, then led the Lions 65 yards in the final 1:41, but overthrew Marvin Jones Jr. in the end zone as time expired.