The short-handed Bucks, missing three starters, went on a 22-3 run to start the fourth and stopped Atlanta's road winning streak at six, one short of a franchise record.
Jamal Crawford led Atlanta with 20 points, but the Hawks stumbled on the road for the first time since Dec. 31.
The Hawks looked to be cruising toward an easy win heading into the fourth with a 75-64 lead, but began the quarter 1 of 13 from the field before Al Horford's basket with 2:46 left.
Milwaukee's Garrett Temple, who signed a 10-day contract on Tuesday, hit a 3-pointer, Delfino added another and Boykins added an 11-foot floater to give Milwaukee a 79-78 lead.
The Bucks extended it to 86-78 on Andrew Bogut's hook shot, Boykins' jumper and another 3-pointer by Temple.
Horford completed a three-point play to cut it to 86-84, the Hawks' second field goal of the quarter, but Delfino hit a 3-pointer. Atlanta again closed within two when Joe Johnson hit a 9-foot floater for the last of his 15 points, but Ersan Ilyasova hit two free throws and Keyon Dooling added two more to make it 96-90 with 19 seconds left.
Atlanta had won six in a row, including games at Miami and Utah, and looked poised to match the mark set in 1993 as well as take the lead for most road wins in the NBA this season at 16.
That was before their collapse.
The Hawks went 5 of 22 from the field in the fourth quarter, missing all six of their 3-point attempts and looked lost despite Horford finishing with 17 points and 10 rebounds. Josh Smith had 14 points and 11 boards.
The Bucks appeared to be fading away again in a tough season following their first playoff appearance in four years, which ended in a Game 7 loss to Atlanta. Milwaukee had lost 10 of its previous 14 while injuries decimated its depth.
Jennings has missed 18 games because of left foot surgery, Drew Gooden 16 because of left foot plantar fasciitis, Delfino 32 with a concussion, Salmons four with soreness in his right hip and Bogut six more.
The virus is the latest energy-zapping ailment for Bogut, who had blood tests that confirmed he'll need continued antibiotics and his recovery could take months after being scratched by another player in December. Bogut has declined to identify the virus, but says he'll continue to play through the fatigue. He finished with eight points and 14 rebounds.
Notes: This was the third game between the teams after the team's matchup on Jan. 11 in Atlanta was canceled because of a winter storm. That game was rescheduled for March 15. ... Bucks G Chris Douglas-Roberts hurt his left wrist in an awkward fall in the second quarter after being blocked by Smith, but returned to start the second half.