Bruno Fernandes celebrates
A game short on real quality saw the deadlock broken in the 54th minute when a cross from Bruno Fernandes floated beyond Uruguay keeper Sergio Rochet, the goal given to Manchester United's midfield man despite Cristiano Ronaldo claiming it had glanced off his head.
Portugal made most of the running until they went ahead but Uruguay, who must now beat Ghana in their final Group H game to have a chance of qualifying, created chances of their own and could have taken a point.
Rodrigo Bentancur's brilliant first-half run was halted by Portugal keeper Diogo Costa's save, while substitute Maxi Gomez hit the post as Uruguay went in search of an equaliser.
Portugal wrapped up the win in stoppage time when Fernandes got his second from the spot after a video assistant referee intervention which adjudged Jose Gimenez had handled.
Fernandes almost got his hat-trick before the final whistle but saw a low shot strike the post.
The game was interrupted in the second half by a pitch invader carrying a rainbow flag and wearing a t-shirt emblazoned with the words 'Save Ukraine' on the front and 'Respect for Iranian woman' on the back.
Portugal have reached the last 16 with efficiency and will present a formidable obstacle to whoever they come up against because they have strength in all areas.
It was unspectacular but Portugal possess match-winners, Fernandes stepping into the role on this occasion with both goals and that strike against the post that almost gave him a treble.
Ronaldo was quiet, although he was still insisting he had scored the opener in some good-natured post-match celebrations. He may have left Manchester United under a cloud but his status among Portugal's fans remains undimmed as he received huge cheers when his face appeared on the big screen before kick-off and a standing ovation when substituted late on.
Portugal can call on the quality of Manchester City trio Ruben Dias, Joao Cancelo in defence and Bernardo Silva in midfield while the ageless Pepe continues as the defensive rock.
They have not been mentioned among the heavily touted countries for this World Cup but there is genuine class and quality allied to a quiet confidence as they go through to the knockout phase.
Uruguay possess danger men in attack in the shape of Liverpool's Darwin Nunez along with Edinson Cavani and Luis Suarez, who was left on the bench after a poor show against South Korea.
The problem is they were underutilised here as Uruguay were happy to adopt a largely conservative approach until they went a goal behind. Now they are in serious danger of World Cup elimination.
Portugal need a point against South Korea to top the group while Uruguay require victory against Ghana and to better the South Koreans' result to get through. It is a game of brinksmanship that may yet prove very costly in that tense final group game.
The Uruguayans have an ageing strike force in Cavani and Suarez, both 35, while 23-year-old Nunez is still trying to find his feet at this level and was also starved of decent service.
Uruguay have class in midfield with Federico Valverde while Tottenham's Bentancur was a driving force but they are team that can occasionally leave you wanting more.
This was one such occasion and now they have to produce their best against Ghana and hope the other result falls in their favour to prevent a disappointing early departure from Qatar.
-- Courtesy of BBC Sport