DENVER — Stephen Curry was just about unstoppable in the fourth quarter, except near the very end.
Curry scored 20 of his 38 points in the final period but lost the ball under defensive pressure from Danilo Gallinari in the game's final moments, and the Denver Nuggets hung on to hand the Golden State Warriors their third loss of the season, 112-110 on Wednesday night.
"It was a great opportunity to try to tie the game or take the lead," Curry said about the last of his eight turnovers. "Got stuck between looking for the open man and handling the ball, and one little mishandle and Gallinari got it."
The defending NBA champion Warriors (36-3) had won seven straight since their previous defeat, 114-91 at Dallas on Dec. 30.
Gallinari led the Nuggets with 28 points but it was his defense at the game's critical moment that made the difference, Nuggets coach Michael Malone said.
"Gallo has proven this year he can guard most players on the floor," Malone said. "And he did a great job. He got into a stance, forced a deflection, was first to the floor and comes out with the loose ball. Those are winning plays. Those are what separate teams and we had enough winning plays tonight where we were able to withstand the furious comeback that they made."
Will Barton added 21 points for the Nuggets, who snapped a four-game losing streak to the Warriors despite being outscored 37-29 in the final period.
A dunk by Brandon Rush gave the Warriors a 68-64 lead, but Denver outscored Golden State 19-5 over the last 5 1/2 minutes of the third quarter to take a 10-point lead into the fourth.
The Warriors, however, kept chipping away as Curry led the charge.
Layups by Curry and Andrew Bogut cut the deficit to 102-97 with 2:05 remaining. Curry and Barton then traded 3-pointers before Darrell Arthur hit a jumper with a minute left for a 109-102 Denver lead.
But the Warriors fought back, getting a layup from Barnes and a 3 from Curry sandwiched around a Nuggets turnover, pulling to 109-107 with 37.1 seconds left.
And it appeared the Warriors had the Nuggets right where they wanted.
"That fourth was a barrage of 3s," Denver forward Kenneth Faried said. "Steph stepped over halfcourt and made one and I was just like, 'Man, not this again.' But we held them off."
With the Warriors in position to tie or go in front, Gallinari stole the ball from Curry.
"I think he lost the ball and it came towards me and I just dove to the ball," Gallinari said.
He started a fast break that ended in Gary Harris, who finished with 19 points, being fouled and making a pair of free throws.
Thompson hit a 3-pointer with 3.4 seconds remaining to pull the Warriors to 111-110. They fouled Gallinari intentionally and he made one of two free throws, but Thompson missed a long jumper at the buzzer.
"It felt good," Thompson said. "If I got my legs into a little bit more, I think it would have gone in. It was on line, it was just short."
The Warriors, who trailed by as many as 10 earlier, pulled to 55-54 at halftime on Barnes' jumper in the final seconds of the second quarter.
Gallinari had 15 points in the first half, including a reverse layup that preceded Barnes' final shot in the second quarter to keep the Nuggets on top at the break.
Warriors: F Draymond Green was not available because of a scheduled rest day. ... Curry hit a 3-pointer in his 93rd consecutive road game, extending his NBA record. ... Leandro Barbosa returned from a shoulder injury, seeing his first game action since Christmas. ... Barnes scored in double figures for a third straight game.
Nuggets: F J.J. Hickson was sidelined after undergoing a root canal earlier in the day. ... Denver added depth at guard by signing Sean Kilpatrick to a 10-day contract. ... Jusuf Nurkic left early in the fourth quarter with an ankle injury.
Warriors: Complete a back-to-back set by hosting the Lakers on Thursday night.
Nuggets: Continue an eight-game homestand against the Clippers on Friday night.