It's possible the derailleur pivots are gummed up. Have you given it a good cleaning and lubing? Also, it's possible that the shifter cable is sticking. When you shift to a smaller cog, derailleur pivot tension pulls the cable. If the cable is sticking, it will counter the action of the derailleur pivot spring.