After Leeds twice went close in the opening stages, West Ham took the lead in the 20th minute after Luke Ayling tripped Lingard in the area.
Lingard took the penalty himself and although Leeds keeper Illan Meslier saved his shot the Manchester United loanee netted the rebound.
The Hammers doubled their advantage eight minutes later when Dawson headed in Aaron Cresswell’s corner.
Leeds went in search of an equaliser as Patrick Bamford - who saw his early finish disallowed after the ball had initially gone out of play - wasted two fine second-half chances, while Pablo Fornals hit the bar at the other end.
But Leeds could not make the breakthorugh, and West Ham saw out a fine win which sends them fifth in the table, two points behind fourth-placed Chelsea with a game in hand over their London rivals in the race for Champions League football.