Two first-half goals proved costly for Latics as they slipped to defeat at Sixfields.
Keith Curle’s side conceded during a hugely disappointing opening 45 minutes but despite a considerable improvement after the break they were unable to repair the damage.
On the balance of play, the visitors will reflect that they should have taken something from the game, creating several chances once Carl Piergianni had reduced the deficit but, unlike against Port Vale on Saturday, they could not complete the turnaround.
Latics, buoyed by a first win in eight games in all competitions at the weekend, started by making three changes, including a return to the midfield for Jamie Bowden after suspension.
The absence of Jordan Clarke due to concussion protocols led to a reshuffle at the back, Sam Hart moving into a three-man defence while Benny Couto and Dylan Fage were brought in at wing back.
Northampton came into the game in fifth position in Sky Bet League Two with only one defeat in their previous six league games, although recent results had shown a dip after a strong start to the campaign.
And having started with intent, it took the home side just 14 minutes to open the scoring. Jonny Guthrie capitalised on a slip in the Latics back-line to slide the ball past Jayson Luetwiler, latching onto a pass from Kion Etete.
Northampton continued to press, Ali Koiki embarking on a dangerous run down the left before delivering a teasing cross towards Sam Hoskins but the ball was deflected wide. Midway through the half, Etete also went close with an aerial effort from Aaron McGowan’s centre.
Although the home side remained in control, the first half was one of little incident. Latics tried to threaten on the break but they visitors struggled as an attacking entity during the opening period.
After a strong run down the right, Harrison McGahey picked out the run of Ouss Cisse from midfield but just as it looked like he would get his shot away, a deflection took his effort past the post.
With half-time approaching, the home side extended their lead, Etete breaking into the area to meet a sweeping left-wing cross from Koiki, whose dangerous ball gave the striker a simple task from a matter of yards.
Latics were clearly unsettled at the back, more hesitancy allowing Hoskins to break into the area before he dragged a low shot across goal.
In an effort to alter the course of the game, Latics made a triple substitution at half-time, introducing Dylan Bahamboula, Hallam Hope and Jamie Hopcutt, as well as a change in shape.
And Latics reaped an immediate reward, Piergianni forcing the ball home from close range after two initial efforts were kept out by Liam Roberts after a hanging left-wing cross from Bahamboula.
It was a clear shot in the arm for the visitors, who then started to force the issue themselves. A first-time effort from Keillor-Dunn went just wide of goal before Hope glanced a header past the post after a fine right-wing cross from Hopcutt.
The former Ostersunds attacker then went close, lifting a shot over after Hope’s effort from a Bahamboula cross was saved by Roberts before a scramble in the box.
The visitors threatened to lay siege to the home goal, Keillor-Dunn cutting the ball back to Hart only for his low shot to be kept out by Roberts.
But despite a flurry of late pressure from the visitors, they were unable to complete the comeback.
Oldham Athletic: Leutwiler, Hart, Cisse (Hopcutt 46), McGahey, Piergianni, Whelan, Keillor-Dunn, Dearnley (Bahamboula 46), Fage, Bowden, Couto (Hope 46).
Subs not used: Southerington, Adams, Stobbs, Bettache.
Northampton Town: Roberts, McGowan, Sowberry (Rose 79), Guthrie, Horsfall, Hoskins (Connolly 88), Lewis, Pinnock, Koiki, McWilliams, Etete (Kabamba 83).
Subs not used: Dyche, Pollock, Flores, Maxted.
Referee: Brett Huxtable
Attendance: 4,059 (132 away).