Albiol got his head to a Dries Mertens corner to score his first goal this season just before the break with goalkeeper Alex Meret ensuring the hosts kept all three points by denying SPAL's Alberto Paloschi and Mohamed Fares late on.
Carlo Ancelotti's side to within five points of champions Juventus, who will look to maintain their unbeaten run against ninth-placed Roma in Turin later on Saturday.
Inter Milan are third, nine points behind Napoli ahead of their match with bottom club Chievo.
"Thinking of Juventus is likely to demotivate us," said Ancelotti.
"We have to think about ourselves because this team can do more, we have room for improvement and I say it after today's match, which was not amazing."
In Milan, Federico Chiesa's second-half scorcher pushed AC Milan out of the Champions League places at the expense of Lazio.
The pressure is on Gennaro Gattuso as his side are a point behind Lazio, who ended their five-match winless league run with a 3-1 win over Cagliari in Rome.
Fiorentina meanwhile move up to seventh, just three points off the top four places after achieving back-to-back wins for just the second time this season.
"There's no use looking at who's to blame. The team is going through a bad moment," said Gattuso, whose side have take just two points from their last three games and crashed out of the Europa League.
Piatek pulls clear of Ronaldo
Krzysztof Piatek extended his lead at the top of the Serie A scoring charts when he scored his 13th goal of the season in Genoa's 3-1 win over Atalanta, the Polish striker moving two ahead of Juventus star Cristiano Ronaldo after sealing the points two minutes from the end.
Earlier Sergej Milinkovic-Savic scored his first goal in three months as Lazio got back winning at the Stadio Olimpico.
Serbian midfielder Milinkovic-Savic scored 12 times in the league last season but this term had only found the net once against Genoa on September 23.
The 23-year-old scored just his second of the season after 11 minutes when Joaquin Correa's angled drive was cleared by Cagliari keeper Alessio Cragno into Milinkovic-Savic's path, with the Serb finishing off.
Milinkovic-Savic also played a role in the second 11 minutes later, crossing in for Francesco Acerbi to double the scores before Lazio captain Senad Lulic scored the third in the 67th minute by finishing off an Immobile assist.
Joao Pedro pulled one back for Cagliari three minutes into injury time from the spot after being elbowed in the face by Lazio's Angolan defender Bastos.
"I felt so much emotion after scoring I couldn't even celebrate. I thank my teammates who immediately came to embrace me because they knew how much I missed the goal," said Milinkovic-Savic.
Elsewhere on-fire Sampdoria striker Fabio Quagliarella scored his eighth goal in seven league games as the Genoa club beat Empoli 4-2.
The 35-year-old former Italy international's strike took his tally for this season to 10.