The Azzurri needed just the one goal from the Genoa forward to secure three points against Lyuboslav Penev's men, who put in a good away performance
Cesare Prandelli's men had keeper Gianluigi Buffon to thank as he made multiple saves to deny the visitors an equaliser after the Genoa forward's close-range opener had given them the lead.
The three points on home soil for the Azzurrimean that they need just one more win from their final three games - at home to Czech Republic, at Denmark and a final clash as hosts to Armenia - to guarantee a spot in the World Cup 2014 finals, while Bulgaria remain second in Group B of the European qualification section.
Buffon’s match-winning performance came on the occasion of his 135th cap, which leaves him one behind all-time appearance record holder Fabio Cannavaro.
The hosts, without the suspended trio of Mario Balotelli, Dani Osvaldo and Riccardo Montolivio, started the stronger when Gilardino found space on the edge of the area with only 30 seconds on the clock, but he shot straight at Nikolay Mihaylov.
Bulgaria coach Lyuboslav Penev might have worried that this would signal an Italian onslaught, but his side recovered and, after right-winger Stanislav Manolev shot wide from range, they had a great chance to open the scoring.
Georgi Iliev's through ball split Italy’s centre-back pairing and found Tonev 18-yards out, but Buffon was equal to his effort.
The Sicilian crowd was far from impressed and, responding to their cat-calls, Italy upped their game, first Daniele De Rossi then Insigne going close as the hosts turned the screw.
Tricky winger Candreva was causing Bulgaria problems on the left and it was his run and inch-perfect cross that presented Gilardino with an easy chance for the game's only goal, the Genoa striker heading home from six yards.
Luca Antonelli was next to get to the by-line on the left, but Mihaylov read his intention and blocked his cross to deprive the waiting Gilardino of a second strike.
Bulgaria's best chance came just after half-time, when Ivelin Popov found the goal gaping at the back-post. But Buffon pulled off one of the brilliant saves that have made him such a cornerstone for his country, clawing the ball back from the line when a goal looked certain.
The Juventus shot-stopper then made another point-blank save from Tonev's header minutes later, before again clawing the ball back from on the goalline as Italy failed to deal with a corner.
With Italy’s defence all at sea, youngster Todor Nedelev finally did have Buffon beaten, but his shot rolled agonisingly wide.
At the other end, Gilardino had a great chance to seal victory for Prandelli’s men, but his goal-bound shot was blocked by a last-gasp Bulgarian intervention.
The visitors' goalkeeper twice came up for late corners as the away side pressed for an equaliser, before Popov headed wide at the back post with the last touch of the match, but Italy held on to take a massive step towards Brazil 2014.