Carlos Boozer scored 27 points and the Chicago Bulls dominated on the boards to become only the third visiting team to win in Miami this season, beating the Heat 96-89 Friday night.
Chicago outrebounded Miami 48-28. The Bulls had 19 offensive rebounds to four for the Heat.
The Eastern Conference-leading Heat fell to 15-3 at home. Their other home losses came against the Knicks and Warriors.
Miami's LeBron James scored 30 points, extending his streaks of scoring at least 20 points to 31 consecutive games this season, and 52 games in a row overall when including last year's playoff run. He has scored at least 25 in eight consecutive games
The first meeting between the teams this season was a bruiser, and the Bulls repeatedly outfought and outfoxed Miami on the boards. The Heat had won four games this season when outrebounded by 15 or more, but this time the disparity beat them.
Boozer collected one offensive rebound in a sitting position after the ball rolled between his legs, which led to two more second-chance points for Chicago.
The Bulls' final offensive rebound helped seal the win. Jimmy Butler grabbed it and fed Boozer for a layup with 46 seconds left to put them up 93-86.
Chicago had 20 second-chance points to seven for Miami.
Boozer and Joakim Noah had 12 rebounds apiece, and Taj Gibson added nine in 17 minutes. James led the Heat with six.
Boozer went 12 for 17 after scoring a season-high 31 points Wednesday at Orlando. Noah, back after missing one game with flu-like symptoms, had 13 points and set the tone with his physical play.
While the Heat were often on their heels, they kept coming back. A jarring foul by Kirk Hinrich near the sideline staggered James and he collapsed on the Bulls bench, then was helped to his feet by coach Tom Thibodeau.
Seconds later, James sank a 3.
Noah drew a flagrant foul when he tackled James around the neck with one arm to stop a drive early in the fourth quarter. The violation led to a four-point possession for the Heat, with James sinking four consecutive free throws.
The next time Miami had the ball, James drove for a dunk that cut Chicago's lead to 75-72. But the Heat got no closer.
Chicago won with more than mere muscle. The Bulls' 5-foot-9 Nate Robinson made a leaping interception of a James pass, then smartly bounced the ball off Miami's Shane Battier to avoid traveling. The ball dribbled out of bounds, allowing Chicago to keep possession.
Robinson's 3-pointer with 6½ minutes left gave the Bulls their biggest lead, 83-73.
The Bulls pounded the boards from the start and scored the final 10 points of the first quarter for a 26-22 lead. Jimmy Butler's buzzer-beater to end the first half put them up 49-48.
Marco Belinelli sank a 3-pointer to put Chicago up 75-66 after three quarters.
The Heat had won their past two games, both in overtime, but this time they couldn't get to OT.
NOTES: Regarding All-Star voting, James said with a chuckle: "It looks like I'm going to be a starter. Surprising." ... The Bulls are 9-8 home and 9-5 on the road. ... Chicago improved to 8-1 on the road against the Eastern Conference.