Top scorer Jose Baxter's 12th goal of the season earned Oldham victory over Portsmouth, who are now four points adrift at the bottom of League One.
Baxter's drilled strike from long range proved decisive as the Latics recorded their third straight league win.
It got worse for Pompey early in the second half as Sam Sodje saw red for an off-the-ball incident with Lee Barnard.
Jonathan Grounds and Jordan Obita could have doubled Oldham's lead but they were both denied by the woodwork.
VIEW FROM THE DRESSING ROOM
Portsmouth caretaker manager Guy Whittingham speaking to BBC Radio Solent:
"We didn't start well, a mistake by Simon Eastwood - I'm not going to hold him down for that, he's kept us in the games a lot of times - but that mistake has cost us the game ultimately with the one goal.
"We wanted to try and get this goal back because you don't want to just come and accept that you're losing one-nil and the game's going to be a 'one-niller'. You want to go out and get back in the game so we felt we tried to do that.
"Having to play for the whole of the second half, virtually, with ten men is a big task.
"The linesman said he (Sam Sodje) punched the player (Lee Barnard).
"If he has done that it is inexcusable because you are putting your team mates through playing 40 minutes with 10 men.
"Despite going back down to ten men we were never out of the game. The way we kept going was as positive as we could; those are the plusses you've got to take out of the game."