Portugal stormed to a 4-0 win over the Czech Republic in their Nations League A-Group 2 match on Saturday thanks to a Diego Dalot double and strikes by Bruno Fernandes and Diogo Jota.
The victory sets up a crunch clash for the Portuguese on Tuesday at home to Spain, who lost 2-1 to visitors Switzerland, knowing a draw will be enough to reach the final four.
Portugal lead the group on 10 points ahead of Spain on eight after five matches with one game left to play.
"It's a unique feeling to be able to help my country," said Dalot. "We knew it could be a difficult game if we hadn't started with the right attitude.
"We started the game very well, controlling the ball, and after the goals the spaces started to open up a little... Congratulations to everyone, we really deserved this victory and now it's time to recharge our batteries."
Ronaldo needed treatment early on after a being caught in the face by goalkeeper Tomas Vaclik but soldiered on.
The Portuguese controlled possession and opened the scoring in the 33rd minute when Rafael Leao swung a cross into the area and Dalot fired past goalkeeper Tomas Vaclik.
Ronaldo missed a chance to double the lead before Fernandes put the visitors further ahead in first-half added time when he surged into the box and converted a cross from close range.
Ronaldo then conceded a penalty for handball but Patrik Schick blazed the spot kick over the bar just before the break.
Dalot netted his second goal soon after the interval with Jota rounding out the scoring in the 82nd minute to leave the 2019 winners in pole position to reach the semi-finals.
"The Czechs have a good team, but we were well prepared for them and executed our game plan perfectly. After the third goal the game was done," said Portugal coach Fernando Santos.
"We were too passive and our pressing was terrible," said Schick. "We should have tried being more active in the game. Portugal were much better and deserved to win."