Jorge Jesus' men had been in imperious form at the summit of the Portuguese top flight, and looked set to maintain that when Anderson Talisca slotted home from the centre of the penalty area in the third minute.
Eder pulled Braga level on 28 minutes when he capped a quick counter-attacking move, before Salvador Agra completed the turnaround nine minutes from time.
Benfica felt they should have had a penalty late on for an infringement by Andre Pinto on Nicolas Gaitan, but the referee turned down the appeals.
Tempers flared on the touchline in stoppage time, with Enzo Perez and Danilo booked for their part - the former receiving his marching orders having seen yellow in the first half.
The result sees Braga climb to fifth, while Benfica's advantage over second-placed Porto has been reduced to a single point this weekend.
Sporting Lisbon maintained their unbeaten start to the season with a 4-2 victory over Maritimo, whose two goals came in the space of five second-half minutes courtesy of Moussa Maazou.
Estoril continue to struggle in the lower reaches of the division and suffered a 2-1 home defeat at the hands of Belenenses on Sunday.
After seeing Kleber cancel out Miguel Rosa's opener, Deyverson popped up on the hour mark to seal victory for the visitors.
In the day's remaining fixture, Nacional climbed above Academica with a 1-0 win - Marco Matias netting the only goal.
The result represented Nacional's first win in five league matches.
Thank you for reading 5 articles this month* Join now for unlimited access
Enjoy your first month for just £1 / $1 / €1
*Read 5 free articles per month without a subscription
Join now for unlimited access
Try first month for just £1 / $1 / €1
Get daily World Cup 2022 news, updates and other football frolics to your inbox
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.