Michael O'Connor converted the last of the match's three penalties five minutes from time to earn Vale a crucial point in their own battle against relegation.
North End had been eight points clear in second, but that cushion could be cut to just one if either MK Dons or Swindon Town win their games in hand.
Valiants stopper Chris Neal also kept out Johnson and Callum Robinson to keep his side in the match before the break, and they were level seven minutes after the restart when Clarke felled Tom Pope in the area to allow O'Connor to score from the spot when a Vale goal looked unlikely.
However, Preston regained control eight minutes later when Richard Duffy was sent off for deliberate handball on the line and Garner stepped up to restore North End's lead.
Robinson and Gallacher wasted chances to kill the game off and the Lilywhites were made to pay when O'Connor calmly nestled his second spot kick of the contest into the bottom corner, after drawing a foul from John Welsh.
Vale are only four points clear of safety, but this result means that there are now five teams between them and the drop zone.