Henry, a replacement for Zach Clough 10 minutes earlier, struck from 18 yards in the third of six minutes of added time with a shot that looked to deflect off Iron defender Murray Wallace.
Bolton's win took them into the automatic promotion places while Scunthorpe, top at the start of the day, slipped to third after Sheffield United's 1-0 win over Northampton earlier in the afternoon.
Until Henry's intervention Neal Bishop's fourth goal of the season appeared to have earned Graham Alexander's side a deserved draw.
Bolton, watched by the Macron Stadium's second biggest attendance of the season - 17,062 - led 1-0 at half-time.
Josh Vela's half volley from the edge of the area after 17 minutes was his eighth goal of the campaign.
Scunthorpe had a goal disallowed for offside but Clough wasted a good opportunity to double Wanderers' advantage and felt he should have had a penalty after Jordan Clarke's challenge.
Scunthorpe were much the better side after the break and they deservedly drew level when Bolton failed to clear a 62nd-minute corner and Bishop swivelled on the loose ball to rifle home from 10 yards. But their endeavours drew a blank courtesy of Henry's hammer blow.
Report supplied by the Press Association.
Match ends, Bolton Wanderers 2, Scunthorpe United 1.
Second Half ends, Bolton Wanderers 2, Scunthorpe United 1.
Kevin van Veen (Scunthorpe United) is shown the yellow card for a bad foul.
Foul by Kevin van Veen (Scunthorpe United).
Zach Clough (Bolton Wanderers) wins a free kick in the defensive half.
Stephen Dawson (Scunthorpe United) wins a free kick in the attacking half.
Foul by Gary Madine (Bolton Wanderers).
Attempt saved. James Henry (Bolton Wanderers) right footed shot from the centre of the box is saved in the centre of the goal.
Goal!  Bolton Wanderers 2, Scunthorpe United 1. James Henry (Bolton Wanderers) right footed shot from outside the box to the bottom left corner.
Substitution, Scunthorpe United. Tom Hopper replaces Paddy Madden.
Attempt missed. Sam Mantom (Scunthorpe United) right footed shot from outside the box is close, but misses the top right corner.
Attempt missed. Jay Spearing (Bolton Wanderers) right footed shot from outside the box is just a bit too high from a direct free kick.
Sam Mantom (Scunthorpe United) is shown the yellow card for a bad foul.
Foul by Sam Mantom (Scunthorpe United).
Tom Thorpe (Bolton Wanderers) wins a free kick in the defensive half.
Foul by Sam Mantom (Scunthorpe United).
Derik (Bolton Wanderers) wins a free kick on the left wing.
Attempt missed. Tom Thorpe (Bolton Wanderers) header from the centre of the box is close, but misses to the right following a corner.
Corner,  Bolton Wanderers. Conceded by Stephen Dawson.
Foul by Charlie Goode (Scunthorpe United).
Gary Madine (Bolton Wanderers) wins a free kick in the defensive half.
Attempt missed. Gary Madine (Bolton Wanderers) right footed shot from the right side of the box is just a bit too high.
Attempt blocked. Tom Thorpe (Bolton Wanderers) right footed shot from outside the box is blocked.
Stephen Dawson (Scunthorpe United) wins a free kick in the defensive half.
Foul by Sammy Ameobi (Bolton Wanderers).
Substitution, Bolton Wanderers. James Henry replaces Zach Clough.
Attempt blocked. Jay Spearing (Bolton Wanderers) right footed shot from outside the box is blocked.
Sam Mantom (Scunthorpe United) wins a free kick in the attacking half.
Foul by Sammy Ameobi (Bolton Wanderers).
Jordan Clarke (Scunthorpe United) is shown the yellow card for a bad foul.
Foul by Jordan Clarke (Scunthorpe United).
Jay Spearing (Bolton Wanderers) wins a free kick in the attacking half.
Substitution, Scunthorpe United. Kevin van Veen replaces Hakeeb Adelakun.
Andrew Taylor (Bolton Wanderers) is shown the yellow card for a bad foul.
Hakeeb Adelakun (Scunthorpe United) wins a free kick on the left wing.
Foul by Andrew Taylor (Bolton Wanderers).
Stephen Dawson (Scunthorpe United) wins a free kick in the defensive half.
Foul by David Wheater (Bolton Wanderers).
Corner,  Bolton Wanderers. Conceded by Luke Daniels.
Attempt saved. Gary Madine (Bolton Wanderers) right footed shot from the right side of the six yard box is saved in the bottom right corner.
Substitute James Henry's injury time winner earned Bolton a dramatic victory over former leaders Scunthorpe.