Playing in his 161st international, the 34-year-old notched his eighth hat-trick for the Seleccao – the 54th of his remarkable career.
That saw Fernando Santos’ men claim three points with a certain degree of comfort, on an evening that had threatened to turn into a night of frustration.
Lithuania, bottom with one point, missed an early chance when Vykintas Slivka fired over from close range and they quickly paid the price.
Joao Felix’s cross was handled by Markus Palionis after five minutes, and Juventus hitman Ronaldo made no mistake from 12 yards.
But Portugal were surprised when Vytautas Andriuskevicius headed bottom-of-the-table Lithuania level in the 28th minute.
The hosts were level for over half an hour, but then gifted Ronaldo his second and Portugal the lead.
Ronaldo produced a low shot which bobbled twice in front of Setkus in the 62nd minute, but the Lithuania goalkeeper somehow contrived to palm it into the ground, up off his own head, and into the net.
Three minutes later, Ronaldo was left free in the area to sweep home Bernardo Silva’s cross. Too easy.
Manchester City star Silva then laid on another for the master poacher, who sidefooted home before being replaced to applause from the home fans.
William Carvalho completed the rout in stoppage time as Portugal stayed second in Group B with eight points, five behind leaders Ukraine with one game in hand.
“I’m having a good time, but the team was doing very well too,” said Ronaldo. “I am happy and enjoying this moment, not because I scored the goals, but because of the level we have been able to demonstrate in recent years.
“It is up to me to continue helping the national team.”
Fernando Santos, speaking about Ronaldo, added: “He’s the best in the world, it’s clear. This offers definitive proof.”
In the group’s other game, Aleksandar Mitrovic notched twice for Serbia, as they beat Luxembourg 3-0.
Nemanja Radonjic also found the net.