The Republic of Ireland forward netted the decisive strike in the second half to steal the headlines from Neil Harris, who had cancelled out Noel Hunt’s early opener less than a minute after coming off the Madejski Stadium bench.
It took Reading just three minutes to seize the advantage, with Long’s industrious run leading to a cross which was only half-cleared to Hunt, who chested the ball down and drilled it home.
The visitors sounded their first warning soon after when former Reading man James Henry’s right-footed corner found Tamika Mkandawire in space, but the imposing defender’s header comfortably cleared the bar.
It wasn’t long before Henry was causing problems again for his old side with another set-piece delivery into the heart of the box which the Royals struggled to clear, allowing Hamer Bouazza to steal possession but his subsequent shot could not find a path through the crowded penalty area.
Shaun Cummings missed a glorious chance to double the hosts’ lead just before the break when he blazed over from close range following good set-up play from Jobi McAnuff.
The Lions were giving as good as they got in a frenetic first half, but Kenny Jackett’s men were almost punished for a lapse in concentration when McAnuff slipped in Andy Griffin down the flank, but his cross was confidently claimed by David Forde with a host of Reading players looking to pounce.
Harris was introduced at the break and it took him just 30 seconds to make an impact. Nadjim Abdou chipped the ball through for the veteran striker to volley across goal and into the far corner.
The 33-year-old put an end to his run of 16 goals without a game when he netted against Middlesbrough at the weekend, and he was back in the thick of the action again moments later when Griffin had to get in a last-ditch block to deny him from close range.
With Millwall beginning to enjoy the ascendancy, Reading hit them with a swift counter-attack to reclaim the lead. Hunt swung in the cross and Long showed superb composure to drill it home from the edge of the box.
Millwall continued to press for the equaliser, but Harris was frustrated by an offside flag when he appeared to be through on goal.
Top scorer Steve Morison continued to assert his authority on the home side’s defence with some good hold-up play but his lay-off for Liam Trotter proved wayward.