Both sides had a man sent off - Jose Holebas for Greece and David Hasler for Liechtenstein - before Kostas Mitroglou finally broke the deadlock in the 73rd minute.
The match started slowly, though Hasler curled just wide from Liechtenstein's first real chance. They then lost key striker Mario Frick to injury, Andreas Christen taking his place.
Hasler's foul allowed Lazaros Christodoulopoulos to swing in a free-kick which Dimitrios Siovas headed over.
A first half low on incident ended with one that would become important, as Holebas collected his first booking for a foul on Michele Polverino.
Hasler would follow him into the book early in the second period before Greece stepped up their search for a breakthrough.
Mitroglou and Christodoulopoulos sent fierce headers just wide of either post in a five-minute spell, before the game really burst into life on the hour.
Christen brought down Holebas, whose reaction saw him booked along with his assailant and duly dispatched to the dressing room.
He was soon followed down the tunnel by Hasler after a foul on Christodoulopoulos, whose ensuing free-kick saw Kostas Katsouranis' header beaten away by goalkeeper Peter Jehle.
Giorgos Karagounis whistled an excellent effort just wide before Greece finally took the lead in the 73rd minute.
Vassilis Torosidis was the provider with a low ball across the penalty area which Mitroglou slotted home from six yards out.
It was almost 2-0 moments later but Jehle, who clearly preferred to punch rather than catch the ball, diverted Sotiris Ninis' excellent shot around the post and also repelled Christodoulopoulos' dangerous effort from the resulting corner.
Greece were happy to play out time from there on in for a win that leaves them level on points with Bosnia, who surprisingly lost their 100 per cent home record to Slovakia.