The Portland Trail Blazers needed overtime to secure a win over the resurgent Oklahoma City Thunder in their second meeting of the season.
The home side had been leading late on, but Damian Lillard tied the scores with a three-pointer inside the final three seconds to force the extra period after the Blazers had fought back from 13 down.
Russell Westbrook scored a season-high 40 as he tried to wrap up the win for the Thunder, but Lillard matched his total to lead Portland to their 23rd win of the season.
The Chicago Bulls made it four wins in a road as they finished strongly to beat the Washington Wizards.
The Wizards had been a point up with just under four minutes to play, but Derrick Rose added six of his 25 points late on to seal the win for Chicago.
The Los Angeles Lakers stunned the Golden State Warriors, handing the league leaders just their fourth defeat of the season.
The home side rested Kobe Bryant, but still managed to pull away early on against their Pacific Division rivals, leading by 10 after 12 minutes.
The Warriors hit back late on, dominating the final quarter, but seven Lakers finished with double figures to make sure of the win, including Carlos Boozer and Ronnie Price.
The Atlanta Hawks came from behind to seal their 14th win in 15 games, beating the Los Angeles Clippers.
The Clippers had led by 13 early in the second half before DeMarre Carroll led the fightback for the hosts with 25, while Al Horford finished the game with 20.
A dominant second-half performance gave the Cleveland Cavaliers a comfortable win over the Minnesota Timberwolves.
Kyrie Irving edge the home side in front before half time, while Kyle Love finished the game with 20 as the Cavaliers pulled away after the break in his first game against his old team.
The Philadelphia 76ers overturned a huge 23-point deficit in the second half to beat the Miami Heat, giving them just their fourth win of the season.
Last season's beaten NBA finalists appeared to be heading for a comfortable win, but Michael Carter-Williams led the fightback as the Sixers finished the game with a 45-18 run.
George Hill led the Indiana Pacers to victory against the New Orleans Pelicans in his first appearance of the season.
The guard, who has been sidelined with a knee injury for the first 28 games of the campaign, added 15 points in a 20-minute spell to keep the Pacers in front in a closely-fought game.
The Charlotte Hornets clinched their fourth win in a row with victory against the Milwaukee Bucks.
Kemba Walker and Gerald Henderson combined for 43 points as the visitors forced 20 turnovers on their way to the win at the BMO Harris Bradley Center.
The Orlando Magic made a quick start to set up a win over the Boston Celtics, despite a dominant fourth quarter from the visitors.
The Celtics scored just nine points in the first quarter, leaving them 15 points adrift early on and giving them too much to do after the break.
The Phoenix Suns had their highest-scoring game of the season to secure a win over the Dallas Mavericks, extending their winning run to four games.
Goran Dragic and Gerald Green added 47 points between them to hold off a strong finish from the Mavericks, who were trying to avoid back-to-back defeats.
The Brooklyn Nets needed a late push to clinch a win over the Denver Nuggets at the Barclays Center.
The Nuggets were seven points up going into the final nine minutes, but Mason Plumlee led the rally for Brooklyn, scoring six of his 19 points in a 19-4 run from the Nets to finish the game.
Results in full: Minnesota Timberwolves 104-125 Cleveland Cavaliers, New Orleans Pelicans 84-96 Indiana Pacers, Boston Celtics 95-100 Orlando Magic, Chicago Bulls 99-91 Washington Wizards, Los Angeles Clippers 104-107 Atlanta Hawks, Denver Nuggets 96-102 Brooklyn Nets, Philadelphia 76ers 91-87 Miami Heat, Charlotte Hornets 108-101 Milwaukee Bucks, Portland Trail Blazers 115-111 Oklahoma City Thunder, Dallas Mavericks 115-124 Phoenix Suns, Golden State Warriors 105-115 Los Angeles Lakers