Substitute Neil Mellor, two minutes after coming on, scored the all-important winning goal.
In an even opening half the first chance fell to Preston after 12 minutes when Lewis Neal's 25-yard left-foot shot was deflected for a corner.
Seven minutes later Jobi McAnuff's shot was deflected for a right-wing corner.
Matt Jackson was booked for a foul on Karl Hawley after 26 minutes and two minutes later Preston keeper Andy Lonergan made a great save to deny Darius Henderson from inside the six-yard box.
Hornets striker Marlon King then chipped the Preston keeper from the right-hand side but Sean St Ledger cleared the ball for a left-wing corner.
Seven minutes before half-time, Neal's 25-yard left-foot shot flew just over the bar.
Simon Whaley was booked for a foul on Jordan Stewart and, right on half-time, Richard Chaplow crossed from the right for Neal to send in a volley which the keeper could not hold but the danger was eventually cleared.
Early in the second half Preston left-back Callum Davidson was booked for a foul before Hawley crossed from the right-hand side when it would have been better to shoot.
Neal then tried his luck with another 25-yard shot which the keeper dived to his right to push away for a corner.
Mellor replaced Chris Brown and Darren Carter replaced Chaplow.
Almost immediately Whaley's 75th-minute cross was knocked on by Hawley and, when Mellor's shot was blocked by Lee Williamson, the former Liverpool striker fired the rebound from almost on the goal-line home.
Watford brought on John-Joe O'Toole for Damien Francis and Adrian Mariappa for Matt Jackson but Preston held out for three vital points in their relegation battle.