Protect your finances. If she is spending out of character (and acting out of character as you said she is) you must protect the family finances.
Also be sure she is contributing to the family finances BEFORE she spends on herself. I scanned your post but didn't catch if she works or not? If not she will need to get a job. If you are over 100K upside on your mortgage she really shouldn't be blowing money at all until that matter is rectified.
Think of it this way - by protecting the finances you are eliminating one stress/worry you have now and that is her spending. If she is unable to contribute and meet her portion of the bills she will have to move. She has opted to be your roommate for now and when it comes to finances she should be treated as such.
Let the money be a separate thing from the emotional issues. Finances are a logistical manner and usually the first logistic to go sour during marital strife. Don't delay this.