The Azzuri had turned heads with an impressive group stage, blitzing past Turkey, Switzerland and Wales with vibrant and high-energy performances to make themselves contenders for the trophy.
But they were unable to recreate that in London and needed two goals in the additional period to book a last-eight tie with either Belgium or Portugal in Munich, where their credentials will be truly tested.
They will take heart, however, from their resurgence in extra-time and they have posted a new record of 31 games unbeaten.
Austria, who bossed the second half of normal time and threatened to cause a real shock after Marko Arnautovic's goal was ruled out by VAR, gave themselves hope with Sasa Kalajdzic scoring the first goal against Italy in 11 games late on, but they could not force a penalty shoot-out.
Having played their three group games in Rome, Italy hit the road and initially appeared to settle in to their new surroundings.
Bachmann was tested more sternly in the 17th minute as he made a top-class save to keep out Nicolo Barella's shot with his feet as the Austrians continued to live dangerously.
The Azzuri continued to press and they came even closer to taking the lead just after the half-hour when Immobile almost scored a memorable goal.
The Lazio striker was afforded space on the edge of the box and sent a swerving effort that just did not dip enough, cannoning off the angle of post and crossbar and to safety.
Italy's defence had not been breached since October, but Austria had their moments on the break in the first half and enjoyed their best spell of the match straight after the restart.
Former West Ham striker Arnautovic surged into the box after Italy were robbed of possession but he chose to shoot when team-mates were waiting for a pull-back.
Then David Alaba had a great chance from a free-kick just outside the area, but he could not get his shot up and down over the wall in time and it went just over the crossbar.
It looked as though they had got their reward just after the hour-mark as Arnautovic nodded home Alaba's header at the far post. However, VAR Stuart Attwell ruled it out as Arnautovic was marginally offside.
Austria continued to be the better side but they could not create anything clear-cut while Italy also looked lost for ideas, appearing tired and flat as the game ended goalless after 90 minutes.
Italy regained their verve in the additional period and needed only five minutes to go ahead.
Spinazzola picked out Chiesa at the far post and the Juventus forward cut back inside to his left foot and then fired a low effort across goal into the bottom corner.
Their passage to the last eight was sealed in the final moments of the first half of extra-time as Francesco Acerbi held the ball up in the penalty area and teed up Pessina to convert with another smart finish.
Italy finally did concede in the 113th minute, for the first time since a friendly with Holland in October when Kalajdzic squeezed a header in at the near post from a corner, but Austria could not find an equaliser.