I'm not sure about the liver causing it, but it's always possible. If the liver can't do as good a job as normal hormones could be thrown off. Doing the liver cleanse anyways is a good idea. Any allergies would be helped, and that's in the very least!
Stress definatly throughs off periods. It has something to do with the stress hormone cortisol. Cortisol does a lot of things to the body. One way of combating stress is to deal with any negative feeling the stress causes. The negative feelings (like anger) cause all sorts of health issues! (I'm proof!) Another way to combat stress is to do something that you find simply fun. Think of the things you enjoyed as a child. For me it's my antique baby doll. Who knew that playing dolly would bring such relief!!