Zu Beginn der Saison 2010/11 kam Mario Gómez nur zu Kurzeinsätzen. Er stand jedoch am 7. Spieltag gegen Borussia Dortmund zum ersten Mal seit längerer Zeit wieder in der Startformation, blieb aber weiter torlos. Teils wegen guter Leistung am vorhergehenden Spieltag, teils aufgrund mehrerer Personalausfälle stand Gómez im Spiel gegen Hannover 96 erneut in der Startelf und erzielte alle Treffer zum 3:0-Sieg. Insgesamt erzielte er in dieser und den folgenden acht Bundesligapartien bis zur Winterpause zwölf Tore, dazu kamen sechs Treffer in der Champions League und zwei im DFB-Pokal. Dabei traf er jeweils dreimal gegen CFR Cluj und den VfB Stuttgart. Insgesamt gelangen ihm in dieser Bundesligasaison fünf Dreifachtorerfolge – der Rekord von Gerd Müller liegt bei sechs –, neben Hannover und Stuttgart auch noch gegen den 1. FC Kaiserslautern, Bayer 04 Leverkusen und den FC St. Pauli. Gegen Leverkusen erzielte Gómez seinen ersten „lupenreinen“ Hattrick in der Bundesliga. Im Spiel beim FC St. Pauli am 7. Mai 2011 schoss er zugleich sein 100. Bundesligator. Mit insgesamt 28 Saisontoren gewann Gómez erstmals die Bundesliga-Torjägerkanone und ist damit der sechste Bayern-Stürmer, dem dies gelang. Mit zusätzlichen acht Treffern in acht Partien der Champions League, mit denen er gemeinsam mit Samuel Eto’o zweitbester Torjäger wurde, und drei Toren im DFB-Pokal erreichte er eine Quote von 39 Toren in 45 Pflichtspielen.
Auch in der Saison 2011/12 traf er von Beginn an häufig. So konnte er gegen den 1. FC Kaiserslautern einen weiteren Hattrick und im Spiel gegen den SC Freiburg sogar vier Treffer erzielen. In der Vorrunde der Champions League 2011/2012 gelang Gómez beim 3:2-Erfolg der Bayern gegen den SSC Neapel erneut ein lupenreiner Hattrick. Er ist der erste deutsche Spieler, dem dies in der Champions League gelang.[13] In derselben Spielzeit erzielte Gómez im Achtelfinale beim 7:0-Erfolg der Bayern gegen den FC Basel als erster deutscher Spieler vier Tore in einem Champions-League-Spiel.[14] Seine insgesamt zwölf Treffer in der Champions-League-Saison hätten einen Rekord bedeutet, wenn nicht Lionel Messi im gleichen Jahr 14 Tore erzielt und damit Gómez übertroffen hätte. Auch in der Bundesliga erreichte er, lange auf Rang eins liegend, mit 26 Toren lediglich den zweiten Platz in der Torschützenliste hinter Klaas-Jan Huntelaar. Dazu passt, dass sich auch der FC Bayern in dieser Saison sowohl in der Bundesliga und dem DFB-Pokal als auch in der Champions League mit dem zweiten Platz begnügen musste. Im Finale der „Königsklasse“, das in München stattfand, traf Gómez zwar im Elfmeterschießen gegen Petr Čech, verlor aber mit seinem Team dennoch gegen den FC Chelsea. Im April 2012 hatte Gómez seinen Vertrag beim FC Bayern München bis zum Jahr 2016 verlängert.[15]
Durch eine Verletzung, die sich Gómez in der Vorbereitung zur Saison 2012/13 zuzog, fiel er dreieinhalb Monate aus.[16] Erst Ende November 2012 kehrte er zurück. In seinem ersten Bundesligaspiel nach der Verletzung erzielte er gegen Hannover 96 nur 26 Sekunden nach seiner Einwechslung sein erstes Pflichtspieltor in der laufenden Saison.[17] Infolge seiner Verletzung verlor Gómez seinen Stammplatz an den vom VfL Wolfsburg verpflichteten Mario Mandžukić. Trotz zahlreicher Ein- und Auswechslungen in der Folgezeit traf Gómez dennoch regelmäßig in der Liga. Am 16. April 2013 schoss er nach seiner Einwechslung im Pokalhalbfinale gegen den VfL Wolfsburg innerhalb von 6 Minuten einen Hattrick. Am 28. Spieltag sicherte er sich mit dem FC Bayern München so früh wie noch nie in der Geschichte der Bundesliga die Deutsche Meisterschaft. Am 25. Mai gewann er die Champions League, wobei er im Finale kurz vor Schluss eingewechselt wurde, aber ohne Aktion blieb. Dazu erzielte er zwei Tore im DFB-Pokal-Finale, das in Berlin mit 3:2 gegen seinen ehemaligen Verein VfB Stuttgart gewonnen wurde, und wurde mit sechs Treffern Torschützenkönig des Wettbewerbs.