Capoue played 60 minutes on his return from two months on the sidelines while Vertonghen completed the full 90-minute shift after a a four-week absence.
It was a game that had just about everything as we cruised into a 2-0 lead but then had Nabil Bentaleb sent off and played for 50 minutes with 10 men, during which time Reading levelled at 2-2 before goals from Ruben Lameiras and Kenny McEvoy secured the three points.
Lameiras' strike for 3-2 was the key moment but Jordan Archer's fine one-on-one block to deny Tarique Fosu just seconds later was just as important before McEvoy ended the contest in the third minute of injury time.
The result on the final afternoon of the regular season sees us climb above Arsenal, Villa and Bolton into 12th place of 22.
Reading had the first chance of an all-action first half when Gozie Ugwu lobbed just over in the second minute, but bar for a couple of shots from distance, it was all Spurs for the rest of the half.
It took just a minute to respond to that first chance as Daniel Akindayini on his first start for the U21s did well to meet McEvoy's cross but couldn't keep his volley down.
Our high pressing was the feature of the first half and forced Reading into mistakes, almost punished on six minutes when Bentaleb met another McEvoy cross, only to see his header deflected over. Lameiras drove in the corner and Giancarlo Gallifuoco launched himself in at the far post, his header just off target.
We were ahead with nine minutes on the clock. Capoue was upended by Aaron Tshibola and Bentaleb made no mistake from the penalty spot.
The chances kept coming. Lameiras darted to the near post to meet McEvoy's cross, glancing just over, before providing another opportunity from a driven corner, this time Milos Veljkovic volleyed wide.
Capoue burst into the box again on 17 minutes but was denied one-on-one by Stuart Moore and moments later, having won possession centrally, fired just wide from 25 yards.
Jack Stacey dragged wide for Reading before our next chance with Capoue involved again, this time breaking into the box on the right before squaring for Lameiras, who beat Moore, only for Sean Long to clear off the line.
The second goal arrived on 36 minutes, another penalty. Lameiras got the better of Pierce Sweeney in the left channel and was dragged down by the centre-back. Lameiras picked himself and drilled the spot kick into the bottom corner.
But the game changed on 41 minutes. We won possession again centrally and Bentaleb looked to break forward. He was chased by Craig Tanner, who clinically hacked him down from behind. Bentaleb was clearly infuriated but raised his hands in retaliation and was sent off for his reaction.
The team remained fluid in playing system, re-organising into a 4-2-1-2 system for the start of the second half, with Lameiras the link between holding midfielder Capoue and Veljkovic and Akindayini and McEvoy in attack.
The second half was a different story though as Reading forced their way back into the game.
After a relatively quiet start, Fosu rattled the crossbar from 25 yards on 55 minutes and two minutes later, the visitors were back in it as Stacey curled into the top corner from the same distance.
Filip Lesniak replaced Capoue on the hour mark and we had a breakaway chance on 65 minutes when a shot from Lameiras flew across the face of goal to McEvoy, but the winger couldn't divert it on target.
Reading then levelled on their next attack as Tanner floated in a corner, Sweeney powered his header at goal and the ball appeared to take a deflection on the way home.
Vertonghen tried his luck from 25 yards as we started to work our way back into the game offensively with the sheer hard work of Akindayini, McEvoy and guile of Lameiras taking us back into more positive areas.
The key moment arrived on 75 minutes as Lameiras worked a yard to shoot from the edge of the box and his low effort went through Moore and crept over the line in slow motion as the goalkeeper scrambled back.
Archer's fine one-on-one save with his feet to deny Fosu a minute later was just as important and after a relatively chance-free final 10 minutes, McEvoy secured the victory after Moore hit an attempted clearance straight to him in the box.
Quite an afternoon!
Spurs: Archer; McEneff, Gallifuoco (Dombaxe, 80), Vertonghen, McQueen; Bentaleb, Capoue (Lesniak, 61), Veljkovic; McEvoy, Akindayini (Campbell-Young, 82), Lameiras. Unused sub: Miles.
Reading: Moore, Long, Griffin, Tshibola, Cooper, Sweeney, Stacey, Kelly, Ugwu (Cardwell, 80), Tanner, Fosu. Unused subs: Keown, Lincoln, Fridjonsson, Murombedzi.