Iran midfielder Masoud Shojaei gave Osasuna the lead after 20 minutes, but Athletic hit back shortly afterwards through Aitor Ocio.
But the visitors were on the back foot for virtually the entire second half as Ocio was sent off after 50 minutes.
And Osasuna's constant pressure finally paid off 10 minutes from time, when Sergio Fernandez slotted home the winner to propel the northerners into their highest position since the opening weekend of the season.
Jose Antonio Camacho's side are now in 11th place, an outcome which hardly seemed possible just a couple of months ago, when the Pamplona-based club sat rooted to the bottom of the table.
But the northerners had lost just once in their past 10 matches prior to this one and back-to-back wins over Espanyol and Atletico Madrid had seen the club move out of the relegation zone for the first time in several months.
Athletic, meanwhile, had moved four points clear of the drop zone following last weekend's 2-1 win at home to fellow strugglers Mallorca.
But the Basque side - who face Barcelona in the final of the Copa del Rey next month - are still in a relegation battle and this match was a must-win affair for both sides.
And given the intense rivalry which has developed between these two sides in recent years, there was a derby atmosphere in the Reyno de Navarra stadium.
Athletic almost took the lead after a quarter of an hour, when Spain striker Fernando Llorente crashed a header just over the bar.
Five minutes later, though, Osasuna went ahead.
Javad Nekounam's shot was blocked, but his compatriot Masoud was on hand to fire home from close-range to give the home side a precious lead.
But the locals' joy soon turned to frustration as Athletic equalised four minutes later, when Aitor Ocio was left unmarked in the area to head home Fran Yeste's pinpoint cross.
And they could have gone ahead two minutes later, when Llorente missed a simple header.
Both sides missed good chances to go ahead in the remainder of a lively first half.
But Osasuna began brightest in the second half and the Iranian duo of Masoud and Nekounam came close to putting the locals ahead just after the restart.
Despite missing that double opportunity, Osasuna received a huge boost after 50 minutes when Ocio was shown a straight red card for a dangerous tackle on Masoud.
The decision appeared slightly harsh, but the home side hardly cared and buoyed by their passionate supporters, they set out in search of a second-half winner.
Substitute Kike Sola came close on several occasions, but was unable to hit the target.
A winning goal for the home side seemed imminent now, though, and duly arrived 10 minutes from time when the unmarked Sergio poked home from a corner.
The win sees Osasuna climb to 11th place, while Athletic drop to 14th.