With seconds left, the midfielder popped up to beat Simon Sluga from close range and net his first goal for the club since arriving from Derby in the transfer window.
The hosts made five changes to their side after a disappointing defeat at Stoke on Saturday, but began quickly, Ryan Tunnicliffe dragging wide from 20 yards.
With 25 minutes gone, the Lions should have taken the lead when home skipper Sonny Bradley gave the ball away and Tom Bradshaw went clean through on Sluga, but his touch was heavy and the Town stopper was off his line to save.
Just before the half hour, Luton had a decent chance when Morrell's cross was chested down and volleyed on target by Jordan Clark, Bialkowski collecting low down.
Thompson then miscued another attempt moments later, dragging behind as neither side could take a first-half advantage.
After the break, Luton showed first, with a good move from defence to attack seeing Tom Ince crack an effort that was flipped over the bar by Bialkowski.
The corner was not properly cleared, coming out to Tunnicliffe, who delivered a good ball back in for Elijah Adebayo as he took a touch and then managed to turn his effort beyond Bialkowski.
Adebayo could have made it 2-0 moments later, picked out by some wonderful wing play by Clark, only to head over at the back post.
Kal Naismith hammered a hopeful volley into the stands from distance, but Millwall came on strong in the latter stages.
Scott Malone's cross almost caught out Sluga, the keeper tipping on to his own bar and behind.
Matt Smith hooked a volley over at the back post following a deep cross, but there was to be even later drama, Evans stealing in for a point.