Disclaimer: My kids are still little (3.5 and 1.5). I agree that the gender exclusion is age appropriate, but that some of the behaviors are not at all appropriate. If the kids are playing at your/your mom's house and Michael and John start saying hateful things to Mary, the playtime needs to end right then and there (with maybe one warning - e.g., John and Michael, in this house we always treat each other with respect. Namecalling, etc., is not acceptable. If this continues, John is going to have to go home.). When John comes over, the house rules need to be reiterated to him (we treat people with respect, we don't call names, we don't rub in the fact that someone is excluded by giving one person treats, etc.).
Also, talk to Mary and Michael before they even see John about how it's ok for one sibling to be friends with someone without the other sibling being involved, but that they all need to be nice and respectful to each other. Come up with ideas with them about how to handle the situation and let each of them talk about how it feels when he/she is called a name, excluded, etc., to try to build empathy. Maybe a compromise that they can all agree with would be to play a couple of games together and then Michael and John can go off together to play for a period of time. Could you maybe bring one of Mary's other friends with her when you go to your mom's to visit so she has someone, too?
If you can't get John's parents to agree to the same rules, then, unfortunately, I don't see how you can let Michael and Mary go to their house together. You might let Michael go over there alone for some period of time, but the minute they go into the yard and taunt Mary through the fence, Michael needs to come home. The boys AND Mary (and your youngest daughter) need to learn that it's ok to have a special friend, but they don't need to be hurtful to do it.
edited to fix a typo
edited again to reiterate that I think that you should definitely bring a friend for Mary for the Easter Egg dying get together as a short term solution.
Also, talk to Mary and Michael before they even see John about how it's ok for one sibling to be friends with someone without the other sibling being involved, but that they all need to be nice and respectful to each other. Come up with ideas with them about how to handle the situation and let each of them talk about how it feels when he/she is called a name, excluded, etc., to try to build empathy. Maybe a compromise that they can all agree with would be to play a couple of games together and then Michael and John can go off together to play for a period of time. Could you maybe bring one of Mary's other friends with her when you go to your mom's to visit so she has someone, too?
If you can't get John's parents to agree to the same rules, then, unfortunately, I don't see how you can let Michael and Mary go to their house together. You might let Michael go over there alone for some period of time, but the minute they go into the yard and taunt Mary through the fence, Michael needs to come home. The boys AND Mary (and your youngest daughter) need to learn that it's ok to have a special friend, but they don't need to be hurtful to do it.
edited to fix a typo
edited again to reiterate that I think that you should definitely bring a friend for Mary for the Easter Egg dying get together as a short term solution.