The England captain had scored all 10 of his previous spot-kicks in the league but saw his perfect record end as he appeared to slip just before firing the ball high and wide.
It mattered little, though, as Michael Olise struck 11 minutes after the break to given Bayern a 1-0 win at the Volkswagen Arena as they bounced back from their Champions League heartbreak against Paris St Germain.
Bayer Leverkusen's hopes of finishing in the Champions League places were dealt a major blow after they were beaten 3-1 by Stuttgart, who boosted their own hopes of playing in Europe's top club competition next season.
Aleix Garcia gave Leverkusen a first-minute lead, but Stuttgart responded with goals from Ermedin Demirovic, Maximilian Mittelstadt and Deniz Undav to move up to fourth.
Third-placed RB Leipzig secured their place in the Champions League with a 2-1 win over St Pauli.
Hoffenheim's chances of finishing in the top four will go down to the last day after Bazoumana Toure's 26th-minute strike was enough to give them a 1-0 win over 10-man Werder Bremen, who had Yukinari Sugawara sent off in the fifth minute.
In LaLiga, Atletico Madrid's week went from bad to worse as Borja Iglesias' strike condemned them to a 1-0 defeat to Celta Vigo at the Riyadh Air Metropolitano.
Sevilla eased their relegation fears but left it late to earn a 2-1 victory over Espanyol.
Former Blackburn forward Tyrhys Dolan put Espanyol 1-0 up in the 56th minute, only for goals from Andres Castrin and Akor Adams to turn the game on its head.
Real Betis threw away a two-goal lead as they missed the chance to rubberstamp their place in the top five by drawing 2-2 with fellow European hopefuls Real Sociedad.
In Serie A, Inter Milan captain Lautaro Martinez marked his second start since February with a goal to help earn a 3-0 win at Lazio in a Coppa Italia final dress rehearsal.
Martinez has endured an injury-hit second half of the campaign but needed only six minutes to score his 21st goal on his return to the starting line-up for the first time April 5.
A 39th-minute goal by Petar Sucic doubled the champions' lead and Henrikh Mkhitaryan wrapped up the scoring at Stadio Olimpico, where sorry Lazio finished with 10 men after Alessio Romagnoli was sent off.
Juventus moved one step closer to finishing in the Champions League places with a 1-0 victory over Lecce thanks to Dusan Vlahovic's first-minute strike.