New Orleans overcame a 12-point deficit in the final five minutes to win its third in a row.
Gordon's key shot gave the Pelicans a 100-98 lead and two free throws by Tyreke Evans with 19 seconds left boosted the advantage to four.
After Jarrett Jack hit a jumper for the Cavaliers, Jrue Holliday's two foul shots with 12 seconds remaining wrapped up the victory.
Gordon and Evans both scored 19 points while Anthony Davis had 17 points and 13 rebounds. New Orleans evened its record at 6-6, leaving the Southwest Division with no teams below the .500 mark.
Cleveland lost for the fourth time in five games. The Cavaliers were led by Kyrie Irving with 22 points and Jack with 19.