Tyrus Thomas scored 16 points and Drew Gooden added 14 for the Bulls, who improved to 8-3 at home.
Gordon broke a 96-all tie with a 3-pointer in transition with 2:47 left. Rose later slashed through the lane for a basket to give the Bulls a 103-98 lead with 1:23 left.
Rose stepped up his play in the second half after being outplayed by the Nets' Devin Harris. Rose finished with six assists and six rebounds.
The Nets lost hope of coming back when Harris had a turnover with 1:10 left. He argued the call and was assessed a technical.
Harris finished with 22 points and seven assists. Carter and Harris were a combined 24-of-25 from the free throw line.
Trailing 82-75, the Bulls got back into the game with a 12-2 run early in the fourth quarter. Thomas finished off Larry Hughes' pass with a dunk, then made two free throws to give Chicago an 87-84 lead.
Carter and the Nets squandered a 23-8 lead in the first quarter, but closed out the first half in spectacular fashion. Trailing 42-38, the Nets outscored the Bulls 12-0 late in the second quarter to take a 50-42 lead. They were ahead 60-48 at the break after Carter's heave at the buzzer.
Carter scored 18 points in the half on 6-of-11 shooting and Harris had 15 points and four assists. Gordon led the Bulls with 12 points in the half.
Notes: Thomas, who has been getting limited playing time, scored eight points and had four rebounds in the first half before hyperextending his neck late in the second quarter. He did return late in the third quarter. ... Nets F Jarvis Hayes was inactive with a hamstring injury.