Injury-hit Wales had made a solid start against the Group A favourites but their good work was undone when James Collins was shown a straight red for a reckless lunge on Guillaume Gillet after 25 minutes.
Manchester City captain Kompany capitalised to give the visitors the lead with a header three minutes before the break, with Vertonghen sealing the three points with an unstoppable free-kick late on.
There are positives for manager Chris Coleman to take into Tuesday's next fixture in Serbia, but Wales are now on a worrying run of four defeats without scoring a goal.
Wales had been heavy underdogs coming into the game, with Coleman not being helped by a an injury list that included late withdrawal Joe Allen, Craig Bellamy, Wayne Hennessey, Neil Taylor, Andrew Crofts and Jack Collison.
But they had made a good start, with a disciplined defensive display frustrating the classy visitors while also looking potent on the break. Wales fashioned the first real chance as Gareth Bale's cushioned header fell for David Edwards via a deflection off Vertonghen, but the Wolverhampton Wanderers man could only find the side-netting.
Bale carved out another chance after 18 minutes, ghosting past Dries Mertens, but his cross was too high for Simon Church. The hosts had a lucky escape at the other end as Collins brilliantly denied Vermaelen a point-blank header, before Mertens' deflected effort rolled just wide of the far post.
But Welsh hopes crumbled when Collins, playing his first international since March 2011, saw red after his terrible challenge on Gillet. The West Ham United defender and his team-mates seemed exasperated by the decision, although replays did not suggest he had any grounds for complaint.
His dismissal prompted a reshuffle from Coleman as Ashley Williams dropped back from midfield into a more familiar role in the centre of defence alongside Darcy Blake.
Belgium soon began to exploit the extra space and Mertens should have given Marc Wilmots' side the lead after 35 minutes, but the PSV Eindhoven winger fired narrowly wide after cutting in from the left.
Bale continued to pose Wales' best attacking threat and another purposeful surge from the Tottenham Hotspur man came so close to finding the opener, but Church saw his shot blocked by Gillet.
Kompany breaks the deadlock
And the miss was punished when skipper Kompany got the better of Blake to head in at the near post from Mertens' pinpoint corner to give Belgium the lead in the 42nd minute.
Adam Matthews denied substitute Romelu Lukaku an easy finish with a fine defensive header, while Vertonghen hit the side-netting after linking wonderfully with Eden Hazard.
Wales were clinging on bravely, and only a sharp save from Thibaut Courtois denied them an equaliser from Bale's fierce free-kick, before Williams headed narrowly wide from the resulting corner.
Wales were fortunate to escape punishment when Edwards and Matthews misplaced passes in quick succession, but on both occasions Lukaku could not control balls into his feet.
But Belgium put the seal on the win in the 83rd minute when Wales captain Aaron Ramsey fouled Lukaku. Vertonghen stepped up to hammer the free-kick beyond Myhill and end home hopes of salvaging a point.