A stoppage-time goal from Bruno Alves secured a 2-1 win over Albania to breathe new life into Portugal’s hopes of qualifying for South Africa 2010.
Hugo Almeida and Erjon Bogdani exchanged first-half strikes but a point would have been insufficient for the visitors.
Carlos Queiroz’s team are now four points behind second-placed Hungary.
Denmark remain top of the section after a 1-0 win in Sweden.
The win, secured by Thomas Kahlenberg’s 22nd-minute goal, means the Danes have accrued 16 points from six matches.