Damian Lillard swished a 29-foot 3-pointer with 14 seconds remaining, then took a charging foul on Draymond Green to negate a potential game-tying hoop with 4.1 seconds left, allowing the host Portland Trail Blazers to overtake and then hold off the Golden State Warriors for a 108-106 victory Wednesday.
Green gave Golden State a 106-103 lead with a 3-pointer with 1:43 to go before Lillard scored the game's final five points.
Lillard's two free throws with 51.5 seconds left cut the Portland deficit to one, after which Stephen Curry saw a driving floater go in and out.
The Trail Blazers then put the ball in the hands of Lillard, who despite having shot just 5-for-16 to that point was able to drill what turned out to be the game-winner from well beyond the 3-point arc.
The Warriors had a chance to tie, but Lillard slid in front of a driving Green near the hoop as the Warriors big man was scoring a layup.
Golden State challenged the charging call, but the foul was upheld.
The Warriors caught a break when Robert Covington missed two potential clinching free throws with 3.5 seconds to play.
However, the Warriors had exhausted their final timeout challenging the Green foul and could get no better than a desperation 37-footer from Damion Lee that was off the mark.
Lillard finished with 22 points to tie Carmelo Anthony for team-high honors for the Trail Blazers, who won a second straight after losing four in a row.
Covington and Gary Trent Jr. added 15 points apiece, and Enes Kanter recorded 11 points and 14 rebounds for Portland.
The Blazers will complete the season's first half with a home game against the Sacramento Kings on Thursday.
Curry totaled a game-high 35 points for the Warriors, who lost a second in succession after three straight wins.
Andrew Wiggins had 14 points, Kent Bazemore 12 and Lee 10 for Golden State, which played without Kelly Oubre Jr., who sustained a sprained wrist at practice Tuesday.
Like the Trail Blazers, the Warriors complete a back-to-back on the final night of the first half, visiting Phoenix on Thursday.
After the Warriors broke out of the gate with 10 straight points -- six on a pair of Curry 3-pointers -- the contest was tightly contested, with two ties and two lead changes in a first half that featured both quarters ending with Golden State holding a one-point advantage.
The third period had three more ties and five more lead changes, ending with Portland on top 82-80.
The lead changed hands six more times in the fourth period before a Lillard 3-pointer with 2:06 to go produced the seventh and final tie.