If the paint is peeling because moisture is coming up from below, you will have a hard time keeping ANY coating on the floor.
An epoxy coating or epoxy paint will probably be the most durable, but removal of the old paint is probably necessary.
An acid-etch using muriatic acid may be necessary to provide "tooth" for any new coating.
While most coatings are resistant to oil, some are attacked by solvents.
From what I understand, damage/discoloration from hot tires is the toughest hurdle to overcome. ...Some coatings can withstand this, others can not.