The Saddlers made it five straight home wins after late goals from Erhun Oztumer and Amadou Bakayoko saw off nine-man Oldham.
The relegation-troubled Latics were reduced to ten men on 16 minutes when Lee Erwin was shown a straight red for a wild lunge on Jason McCarthy.
Walsall made the breakthrough 12 minutes from time, Oztumer converting his 14th goal of the season from the penalty spot after Simeon Jackson was tripped by Peter Clarke.
Oldham’s Brian Wilson then received his marching orders for two bookable offences, and Bakayoko made it 2-0 in added time with a thunderous left-footed drive.
Jon Whitney’s men are up to 12th in League One.
The Saddlers showed one change from the team that lost 1-0 at AFC Wimbledon last weekend, with Scott Laird replacing Matt Preston, who missed out through injury.
Oldham started brightly and could have taken a third-minute lead when Ryan McLaughlin crossed for the unmarked Aaron Amadi-Holloway, but he was unable to connect probably with his header.
Walsall responded with McCarthy exchanging passes with Kieron Morris before firing over from 20 yards, while the Latics’ Aiden O’Neill curled a right-footed effort straight at Neil Etheridge.
The visitors were reduced to ten men on 16 minutes, Croft shown a straight red card for a wild, knee-high lunge on McCarthy.
Despite their man disadvantage, John Sheridan’s resurgent side were next to threaten with Tope Obadeyi volleying over from Amadi-Holloway’s flick-on.
With ten-man Oldham defending stoutly, the Saddlers were restricted to shots from distance; Isaiah Osbourne fired off target from 30 yards while Morris drilled another long-range attempt wide.
The Latics went close just past the half-hour mark, Wilson with a rasping 25-yarder which Etheridge parried smartly to his left.
The hosts fashioned a huge opportunity eight minutes before the break when Oztumer’s pull-back found Morris who was denied superbly by Connor Ripley from close-range.
Ripley thwarted the Saddlers again on the stroke of half-time, the keeper getting down quickly to hold Osbourne’s crisp low drive.
Half-time: Walsall 0-0 Oldham
Although Walsall began the second period purposefully, it was Oldham who created the first chance of the restart on 56 minutes as Obadeyi’s curling free-kick clipped the outside of the post.
The Latics went close again five minutes later when Etheridge could only parry Amadi-Holloway’s fizzing centre. The ball ran for Paul Green, who looked set for a tap-in, but Eoghan O’Connell made a vital goal-saving challenge.
Oldham continued to look the more dangerous, with captain Clarke rising highest to head Amadi-Holloway’s corner over the bar.
The Saddlers were struggling to penetrate a well-organised Oldham backline, but all that changed with 12 minutes remaining.
Simeon Jackson was brought down under the challenge of Clarke in the area, and Oztumer stepped up to send Ripley the wrong way from the subsequent penalty.
Oldham’s woes were compounded moments later as Wilson was shown a second yellow for clashing with Bakayoko – leaving the visitors playing the final eight minutes with nine men.
And the Saddlers made their two-man numerical supremacy tell in added time, when Bakayoko latched onto Oztumer’s incisive pass before smashing an unstoppable drive into the top corner.
Full-time: Walsall 2-0 Oldham
Team: Etheridge, O’Connor, O’Connell, Laird, McCarthy, Chambers, Osbourne, Morris, Edwards (Bakayoko 69’), Oztumer, Jackson (Makris 83’).
Subs not used: MacGillivray, Dobson, Randall, Roberts, Moussa.
Attendance: 6,003 (616 Oldham supporters).