Smith's powerful strike gave Millwall the lead before Bodvarsson came off the bench to secure all three points, continuing the Lions' superb form under Gary Rowett.
But the result will be overshadowed by the off-field incident which saw referee Keith Stroud stop play during the first half.
Stroud was called over by his assistant in front of the East Stand to report homophobic chanting from sections of the home support.
There followed a delay during which Stroud informed both managers what had happened, before fans were warned over the speaker system at half-time.
Millwall – who were fined £10,000 last year for racist chanting by their fans – could now be in line for further punishment from the FA.
On the pitch the home side deserved their win, which leaves them outside the play-offs only on goal difference, after a battling display against an organised Reading side, who were beaten for the first time in 10 games.
In a frenetic first half, much of the on-field drama revolved around Millwall striker Tom Bradshaw. First, he thought he should have had a penalty when he went down in the box but Stroud booked the Millwall forward for simulation.
Ten minutes later, Smith's header found Bradshaw unmarked six yards out but he could only head tamely at Rafael Cabral.
Smith himself went close soon before half-time, this time meeting Murray Wallace's deep cross.
Reading keeper Rafael came out of his goal and flapped at the ball, Smith got there first but his header from 15 yards trickled just wide of the empty net.
At the other end, Reading had a few good moments – most notably when Yakou Meite reacted fastest to a Sam Baldock knock-down only to see his shot blocked – but didn't manage a single effort on target.
After the break, the hosts stepped up a gear with Smith and Wallace both having efforts deflected wide and Mahlon Romeo firing into the side-netting.
Then, with 20 minutes to play, Smith struck.
Jake Cooper, up for a set-piece, brought the ball down in the box but when he failed to get a shot off it fell for the big striker, who found the far corner.
The goal seemed to knock the fight out of Reading and it was soon two – Jed Wallace feeding Bodvarsson on the counter and the striker, signed by Millwall from Reading, finished with aplomb against his former club.