I guess I dont understand what the big deal is with freezing the layer? You are going through the steps to turn it off, why not just freeze it instead? Have you ever tried the layer freeze in the express tools? It's very quick and works great for xref layers, because it turns the individual layer frozen and not the whole xref.
I also don't understand what you mean when you say "I have certain layers I want to be on from the xref" ?
This can still happen by using freeze instead of off. You freeze the layers you don't want to appear, and do nothing to the ones you want to keep (try the layer freeze I mentioned before, you just pick on an object on the layer you want frozen)
We have run into the same bug here, and I told all of my users to use freeze instead of off and the problem is solved. Besides, freezing layers improves performance because autocad ignores them when it does a regen. When they are just off, autocad still treats them like they are there.