It was a confident start from Real, conscious that they could not afford to drop points. The possession was slightly tilted towards the hosts as the match began to open up at both ends.
However, Zidane's team managed to take the lead. Asensio was brought down at the edge of the box and, as everybody surrounded the referee to appeal his decision, Nacho curled the ball into the net.
Sevilla tried to respond and Jovetic smashed the ball onto the top corner of near post, before Navas awkwardly kicked away another effort from the former Manchester City striker.
Real Madrid countered well through Asensio, with the ball coming to James whose shot was palmed away by Rico, but only into the path of Ronaldo, who calmly tapped the ball into the back of the net to double their lead.
Sampaoli's team once again managed to recompose themselves, and Jovetic was denied by the crossbar again after he had beaten Navas with a delicious chip. The striker would have another chance before half time as the keeper turned his finish behind for a corner kick.
He redeemed himself early in the second half, curling his effort into the bottom corner from outside the area, and putting pressure on the hosts.
The fixture entered a dangerous stage for Zidane's men, who dominated possession but the tension was palpable as Sevilla looked dangerous on the break.
The crowd at the Bernabeu breathed a huge sigh of relief when they restored their two-goal cushion. Kroos down the left squared the ball for Ronaldo who found the top corner as he unleashed a powerful left-footed shot that came off the bottom of the bar.
Sevilla took a step further back and this allowed Real to pile on the pressure. Nacho did well down the left flank and he pulled the ball back for Kroos to find the bottom corner with the outside of his foot.
A vital win from Zidane's men which means that they now need four points out of their remaining six to play for, against Celta Vigo and Malaga.