Your cat is showing signs of the Pica syndrom.
Pica syndrom is in short, the consumption of non-edible materials.
This consumption of non-edible materials is generally meant by consumption of fabrics, or in other words objects made of plastic, rubber, wood, leather, cellophane. Paper and cardboard are arguably popular when it comes to Pica.
"Many cats will chew and tear at objects when exhibiting predatory behaviour during play but pieces are torn off and not consumed. A pica sufferer will take the chosen object in its mouth and grind repeatedly with the back molar teeth before swallowing in a sequence that can take just a few seconds. The behaviour is highly rewarding for susceptible individuals and many will go to great lengths to seek out the favoured material. It is not fully understood why sufferers appear so highly motivated to consume fabric but one theory suggests that the act of chewing causes chemicals to be released in the ‘pica brain’ producing a feeling of intense pleasure. This then becomes addictive and, if a cat is observed ‘wool eating’, the expression does appear to be one of sheer ecstasy!"
The vast majority of the inedible objects your cat eats will not be digested properly and may lead to an obstruction. If your cat has diarrhea, vomits, or has displayed any other unnatural behaviour I would recommend going to the vet as this could be a sign of the obstruction. Also, because Pica can be a sign of an underlying medical problem, cats displaying unusual ingestive behaviour should be examined by a veterinarian. If things get more complicated, it may turn out that your cat has something else, as the symptoms are associated with craving for unusual objects, and these symptoms may be due to other illnesses/diseases. Some of them are hyperthyroidism, cancer, lead poisoning.
To answer your second question, teaching her not to eat inedible objects is something you're already doing through the repellent. It may be harder to teach her through commands or showing her through gestures, as this syndrome is hard to manage. Regardless, I'd also recommend to continue locking away anything inedible that you found your cat chewing on/eating before.
A lot of guides suggest that cats could also be triggered to eat inedible objects by boredom, therefore it is important to increase environmental enrichment. Some of the ways to do that could be through introducing puzzle feeders, activity toys, scratching posts, cat trees and other forms of simulation.
Most of all, I really hope it doesn't escalate to a serious disease. I would like to wish you and your cat a lot of good luck with identifying the problem. Stay strong.
edit: I wanted to add just to clarify something - are you sure it's been like this for two years? Two years is an incredibly long time unless you've really been trying hard to lock inedible materials away.