Bundesliga Wrap: Bayern extend unbeaten run
Switzerland midfielder Shaqiri's first-half double all but secured the points for Bayern after Dante had given Pep Guardiola's men the lead with a 19th-minute header on Saturday.
Striker Claudio Pizzaro wrapped up the points for Bayern, however, the league leaders were dealt a blow with the news that Shaqiri - substituted in the 61st minute - had torn his hamstring.
Bayern's last defeat in the Bundesliga came in October 2012 at the hands of nearest title challengers Bayer Leverkusen, who are now 16 points adrift of the Bavarian giants following a 2-1 home loss to Schalke.
Striker Klaas-Jan Huntelaar's 74th minute header sealed the points for Schalke after defender Felipe Santana's own goal had cancelled out teenage midfielder Leon Goretzka's opener for the visitors.
Borussia Dortmund moved just one point behind Leverkusen in third following a 4-0 rout of Eintracht Frankfurt.
A Pierre-Emerick Aubameyang double set Dortmund on their way, the Gabon forward capitalising on an error in the Frankfurt defence in the 10th minute before turning home from Nuri Sahin's corner.
Robert Lewandowski's 47th-minute penalty added to Frankfurt's misery, which was compounded in the 68th minute with a debut goal from attacking midfielder Milos Jojic.
Bert van Marwijk's tenure as Hamburg boss came to an end following a 4-2 loss at bottom club Eintracht Braunschweig.
Rock-bottom Braunschweig were inspired by a second-half hat-trick from forward Dominick Kumbela to claim their fourth league win of the season.
Pierre-Michel Lasogga had given Hamburg the lead but Kumbela struck twice in 16 minutes after half-time to put Braunschweig ahead.
Ivo Ilicevic levelled with 14 minutes to play but there was still time for Kumbela to score a third before Jan Hochscheidt wrapped up the win in injury time.
The loss was Hamburg's seventh in a row in the league, who reacted by sacking Van Marwijk after just over four months in charge.
Hamburg sit second bottom, just one point ahead of Braunschweig.
Elsewhere, Sven Schipplock scored twice to lead Hoffenheim to a 4-1 success over a 10-man Stuttgart.
And Ludovic Obraniak's late leveller dealt another blow to Borussia Monchengladbach's UEFA Champions League hopes as they were held to a 1-1 draw at Werder Bremen.