Stuttgart earned their win despite losing French defender Matthieu Delpierre to a straight red card after only 15 minutes for pushing over Frankfurt's Maik Franz, who was also shown a yellow card in the incident.
But Stuttgart floored Frankfurt with two second-half goals in three minutes as Austrian striker Martin Harnik and Hungarian midfielder Tamas Hajnal scored for their second-from-bottom side.
After consecutive league defeats, this is an important win for Stuttgart coach Bruno Labbadia with his side still two points from safety in 17th with ten games left.
"I am really proud of my team for the way they fought for everything," said Labbadia who enjoyed only his third win since taking charge in December.
"Despite the red card, we managed to keep our shape."
This is the seventh consecutive league game when Frankfurt have failed to score a single goal and the result leaves them 13th.
Before second-placed Bayer Leverkusen played Werder Bremen on Sunday night, Borussia Dortmund had a 13-point lead at the top of the table after Saturday's 3-1 win at defending champions Bayern Munich.
Bayern's director of sport Christian Nerlinger has said he now expects Borussia to win their first league title since 2002.
"I think Dortmund will be champions, and rightly so," he said.
"We now have a different target, we have to go for second place now with everything we've got, and it won't be easy.
"It's a dangerous situation, which the players mustn't underestimate."
Dortmund's young team -- their average age is just 22.3 years -- proved their status as Bundesliga winners-in-waiting with victory in Bayern's backyard and their second win over Munich this season.
Goals by Germany defender Mats Hummels, Paraguay's Lucas Barrios and Turkey midfielder Nuri Sahin sealed Borussia's 18th win from 24 league matches, while Luiz Gustavo scored what proved to be Bayern's first-half consolation goal.
Hanover went third in the Bundesliga with a 1-0 win at Hamburg-side St Pauli.
This was Hanover's 14th win of the season from 24 matches and keeps them on course for a top-five finish and a place in Europe next season.
Nuremberg were denied their fifth straight win after Schalke's Raul netted his 14th goal of the season for the Royal Blues in Gelsenkirchen to seal a 1-1 draw.
Hoffenheim were beaten 2-1 by Mainz after Columbia midfielder Elkin Soto scored a late winner for the guests.
Germany striker Lukas Podolski netted an 88th-minute left-foot shot which sealed Cologne's 1-0 win over Freiburg and leaves his side now 11th in the table and five points from the bottom three. This was Cologne's fifth-straight win at home.
Hamburg were held to a 1-1 draw by Kaiserslautern.
On Friday, two goals by Brazilian midfielder Diego helped Wolfsburg push themselves further from the Bundesliga's drop zone after a valuable 2-1 win over struggling Moenchengladbach on Friday.
Moenchengladbach pulled back a second-half consolation goal, but after their 15th defeat in 24 games, remain rooted to the bottom of the table.
Stuttgart closer to safety, Bayern wave white-flag
Advertisement