Bayern were last held scoreless in the league in February 2020, when former Munich manager Julian Nagelsmann's Leipzig recorded a 0-0 draw at the Allianz Arena.
Bremen's victory, their first over Bayern in any competition since 2008, broke a 27-game winless run against the German champions, which included 26 losses.
Leverkusen's 3-2 win at RB Leipzig on Saturday, with Xabi Alonso's men coming from behind twice and scoring the winner in injury time, put the pressure back on Bayern, who went into Sunday's game with two games in hand.
Bremen were unlucky to have a goal struck off by VAR in the first-half for a foul on Jamal Musiala but Weiser took matters into his own hands in the second period, gliding down the right wing and blasting into the net after 59 minutes.
Bayern pinned Bremen in their own box after the opener but failed to break through. Bremen travelled to Munich trying to overturn recent history, the visitors having not beaten Bayern in any competition in 16 years.