I'm a stepmother of 2 (my husband had 2 when we met) and I'm a mother of 1 (with my husband).
I'd like to urge you to rethink your position on step-parenting. Your stepdaughter visits during school breaks, period. She has a mother. You must honor that and stop seeing her and referring to her as your daughter. She's not. You are doing the right thing trying to build a relationship with her, and that's good if you have some one-on-one time together. It's good that you love her and try your best with her. But you don't have the right to discipline her. You can, and should, intervene in a dangerous situation, of course (crossing the street, wearing a seatbelt if you're out together, etc.). If she's rude to you, you can let her know you don't appreciate the disrespect. But overall parenting comes from her father and her mother. This child has a big adjustment when she leaves her primary home, and you can expect some negative behaviors each time she is uprooted and brought to your state.
I don't know if your son's father is in the picture, but if he is, the same principle applies to him.
I think your husband has an unrealistic and unhealthy view of parenting and step-parenting as well. He wants to be Good Time Charlie to his daughter, and he wants to be either invisible or Simon Legree to your son. She doesn't need a "friend" - she needs a father! And that's not easy work - he has to be firm, consistent, and a good role model, not just the vacation party dad.
I'm very bothered by the "all hell breaks loose" comment and I think you need to take a good hard look at this dynamic in your home all the time, regardless of whether his daughter is visiting.
I don't understand the "excellent husband" and "treats me really really well" evaluation, either, because it seems to me that your husband has zero interest in parenting and in being married to a woman with a child. He "coexists" with your son, which is patently unhealthy and it's completely disrespectful to you. Moreover, when you raise concerns about being disrespected by his daughter, he adds on more disrespect instead of treating you like his partner and his equal. So he's not treating you well at all - if he's supporting you with a good job and buying you jewelry and patio furniture, that's not what matters.
So, bottom line: you have a marriage problem, not a child problem. Please get immediate couples counseling. If he won't go because he doesn't see a problem, then go by yourself (and twice as fast because your problem is even deeper than you think). You both need to wake up to the challenges of marriage, parenting and blended families - what's realistic with kids coming/going, what needs to happen when there's a disruption in the daily dynamic, and what needs to happen on an everyday basis to make this a healthier living environment for your impressionable 7 year old child. This is not a fairy tale fantasy "one big happy family" sitcom - this is real life. It honestly doesn't sound to me like your husband is all that interested in the work involved, and while you are clearly alert to what your child is experiencing, it doesn't sound to me like you are really clued in to the difficulties in establishing a routine and shared parenting views.
Please get help - I can tell you from experience that this isn't going to get better if you just keep talking to your husband and hoping he will change his view.