Ben Simmons added 16 points and nine assists, and Timothe Luwawu-Cabarrot added 16 points in a rare start as the Sixers (22-20) moved past Milwaukee (23-22) for sixth place in the Eastern Conference.
Khris Middleton had 23 points, 14 rebounds and 10 assists for the Bucks in their second straight loss. They were without top scorer Giannis Antetokounmpo, who was sitting out the first of two games to rest a sore right knee.
Fellow starter Malcolm Brogdon (family matter) also wasn't available. Tony Snell (15 points) and Sterling Brown (14 points) moved into the lineup, and the Bucks rallied from 16 points down to tie it before fading in the fourth quarter.
Antetokounmpo practiced Friday, but the Bucks announced Saturday morning that the two-time All-Star would be out until Friday against Brooklyn to "manage" his ailment. Knee pain also kept Antetokounmpo sidelined on Nov. 22 and Dec. 23.
"Hopefully, after missing these two games, he doesn't have to miss any more," Bucks coach Jason Kidd said.
Philadelphia was without its top two shooting guards. JJ Redick (cracked bone below his knee) is out at least a week and Jerryd Bayless (sore left wrist) didn't dress.
Luwawu-Cabarrot, a French guard in his second NBA season, stepped into the starting lineup and made 3 of 5 3-pointers. His 3 capped a 13-0 run early in the fourth as Philadelphia built a 97-82 lead.
The Sixers showed good depth early. Nine players scored in the first quarter, and they built a 53-37 lead before halftime.
After committing just three first-half turnovers, the Sixers threw it away 11 times in the third, and Middleton and Eric Bledsoe (14 points on 5-of-18 shooting) helped the Bucks rally to tie it.
Embiid responded with a dunk and a block on Bledsoe and a three-point play to end the third and give the Sixers an 84-80 lead.