To get rid of the states removing themselves, you can just use Hime's Permanent State script. It makes life pretty easy.Using states to accomplish this comes with some minor problems, such as the states automatically removing themselves from a character when they are KO'ed and the player receiving no indication of when the Repel wears off.
Instead, you could use my Encounter Rate Items script, if you'd like.