Isco struck at the death to send Real Madrid six points clear of Barcelona at the top of La Liga after twice coming from behind to beat Sporting Gijon 3-2 on Saturday.
Madrid can all but secure a first league title in five years with victory when they host Barca next weekend.
But not for the first time this season they needed a late show after Duje Cop and Mikel Vesga put Sporting in front early in both halves.
Isco’s fine individual effort and a towering header from Alvaro Morata ensured neither lead lasted more than a few minutes.
And Isco sealed the comeback when he drilled home from the edge of the box.
“I am happy for him. He has the character to do what he did today,” said Madrid boss Zinedine Zidane.
The Spanish international is yet to agree a new contract with his current deal expiring at the end of next season.
And Zidane insists he wants Isco to stay despite his lack of starts and interest from Barcelona.
“You know what I think of Isco, he is player I like a lot and his place is here.”
Barca can close the gap back to three points when they host Real Sociedad later on Saturday.
Zidane made nine changes from the side that beat Bayern Munich in the first leg of their Champions League quarter-final in midweek.
Cristiano Ronaldo and Karim Benzema were left out of the squad entirely alongside the injured Gareth Bale, while Toni Kroos, Luka Modric and Marcelo had to settle for a place on the bench.
“I feel like I am unfair with those that don’t play, but it is always going to happen,” added Zidane.
“There are 24 players that can play in all positions. It is the difficult part of this job.”
Cop missed a late penalty with the chance to snatch a draw when the sides last met in November.
However, the Croatian made amends when he finished off a lovely Sporting move by volleying home Vesga’s scooped pass to put Sporting in front after 14 minutes.
The lead lasted just three minutes as Real responded with a wonder goal of their own.
Isco received Lucas Vazquez’s pass inside a crowded penalty area but somehow dribbled past two Sporting defenders before curling the ball into the top corner.
Despite dominating possession for the remainder of the first half Real had to wait until early in the second period for another clear chance to take the lead.
Home goalkeeper Ivan Cuellar somehow turned Nacho’s header just out of the reach of Morata, who was awaiting to apply the final touch for a tap-in.
Sporting went straight up the other end to retake the lead as Vesga looped a measured header into the far corner.
Once again, though, Sporting’s defensive deficiencies were quickly exploited by the European champions as Morata towered above his marker to head home Danilo’s cross.
Madrid then peppered the Sporting goal, but didn’t make the breakthrough until the final minute as Isco’s effort from the edge of the area had too much power for Cuellar.