Seven players scored in double figures for Philadelphia, which has won two straight since learning that Elton Brand will have season-ending shoulder surgery Monday.
The Sixers are 12-8 without Brand, who signed a five-year, $80 million deal last summer. That's an encouraging sign for a team hoping to make a strong playoff push and get the No. 4 spot in the Eastern Conference that ensures home-court advantage.
They'll try to move two games above .500 for the first time this season when they host Phoenix on Monday.
Miami has lost four of five. The Heat are one game ahead of Philadelphia for the sixth spot in the East. The four teams jostling for the No. 4 seed were separated by 4 1/4 games coming in.
The Sixers trailed most of the second half until Ivey's layup off a terrific pass by Speights gave them a 74-73 lead early in the fourth.
In partnership with NBC Sports Philadelphia
After Wade missed one of two free throws, Chalmers missed a pair. Then, Louis Williams made two free throws and Ivey nailed a 3-pointer from the baseline to put the Sixers ahead 79-74.
Speights rejected Wade at the opposite end, and Thaddeus Young hit another 3 from the baseline. Following a timeout, Ivey intercepted a pass and scored on a fast-break layup to make it 84-74 and cap a 23-5 run.
The teams traded a few baskets before Ivey drilled another 3 for a 89-78 lead with 3:30 left. The Heat didn't get much closer the rest of the way.
Wade and Chalmers combined for 19 of Miami's 25 points in the third quarter, helping the Heat take a 69-63 lead. Chalmers hit a long jumper and Wade followed with another long one to put Miami up 63-55, and the duo scored the Heat's final 10 points.
The Sixers missed 14 of their 18 shots in the third, but made all 11 free throws to stay close.
The biggest lead of the first half was 7-0 as the Sixers came out strong. It was 44-44 at halftime.