Bjorn Runstrom, on loan from Fulham, put the hosts ahead with a neat finish after good work by David Bell, before Chris Martin levelled from 15 yards.
Bell restored Luton's lead when he took advantage of Andy Hughes's slip to round keeper Paul Gallacher and finish.
But Jason Shackell's header made it 2-2 before Lappin curled in a fine winner.
Luton manager Mike Newell:
"It is bitterly disappointing. The players worked ever so hard and played some good stuff on a pitch that was not conducive to good football.
"It is a killer blow. We didn't deserve that outcome, given the effort we put in and the football we played.
"The decision for the free-kick went against us, and my gut feeling was 'here we go again' as soon as it was awarded.
"We are already in the relegation scrap, but I do not worry about it. I have concerns, but I am not a worrier. To stay up, we need to win games. Draws are no good to us."
Norwich boss Peter Grant:
"I think we deserved the win.
"We shot ourselves in the foot by conceding silly goals again, but my players have determination in abundance.
"Simon got his just rewards because he is on the training pitch practising free-kicks for half an hour after everyone else has gone.
"There is still a long way to go. People talked about this one being a six-pointer, but we have only three more points."
Luton: Beresford, Foley, Heikkinen, Barnett, Emanuel, Spring, Keane, Robinson, Bell, Runstrom (Feeney 85), Talbot.
Subs Not Used: Brill, Morgan, O'Leary, Boyd.
Goals: Runstrom 11, Talbot 48.
Norwich: Gallacher, Drury, Shackell, Doherty, Croft, Safri, Hughes, Lappin, Etuhu (Fotheringham 64), Huckerby, Martin.
Subs Not Used: Lewis, McVeigh, Colin, Eagle.
Goals: Martin 26, Shackell 73, Lappin 90.
Ref: U Rennie (S Yorkshire).