You used to be able to get re-ink sprays for cloth ribbons; I used one to rejuvinate ten year old ribbons for a Brother dot-matrix. You pop the case of the ribbon, squirt the ink a few times onto the ribbon and run it through a few times. The new oil-based ink also lubricates the ribbon path.
I had great results from this method and it lasted ages. Good luck!