Vailas finished with 188 yards on 15 of 26 passing, threw touchdowns of 14, 16, and 9 yards, and added 83 yards on the ground for the Wildcats (5-2, 3-1 Colonial Athletic Association).
All three of Vailas’ touchdown passes came in the first half and his 38-yard touchdown run gave the Wildcats a 34-17 lead midway through the third quarter.
Richmond (4-3, 2-2) rallied, however, scoring 23 unanswered points to go ahead 40-34 with 10:21 left to play.
New Hampshire then drove to the Richmond 8 and Vailas rushed for three yards on a key fourth-and-two play to set up Chris Setian’s game-winning 5-yard touchdown.
Setian, who only had five carries in the win, also had a 35-yard run on the drive.
Quarterback John Laud led Richmond with 372 all-purpose yards.