David Abraham's looping header towards his own goal to clear a Zlatko Junuzovic free kick saw keeper Lukas Hradecky let the ball slip through his hands for an unlikely Bremen winner and their third win in a row.
Earlier, Junuzovic had put the hosts ahead in the first half but Luka Jovic volleyed in from a superb Kevin-Prince Boateng backheel flick for the equaliser.
Frankfurt drop to sixth on 45 points, as many as Bayer Leverkusen and one behind fourth-placed RB Leipzig.
The top four teams qualify for next season's Champions League group stage.
Leaders Bayern Munich are a win away from securing their sixth successive Bundesliga title after demolishing Borussia Dortmund 6-0 on Saturday courtesy of a Robert Lewandowski hat-trick.
(Reporting by Karolos Grohmann; Editing by Christian Radnedge)
