Wow. Three whole weeks. That's a long time to have other people on your turf and not lose your cool. I am guessing they come in one long trip to save on airfare? (You mentioned the dog being a money saver.)
To save your sanity, I would start by having a heart to heart with your husband (if you haven't already). It sounds like he is really close to them and WANTS to spend a lot of time with them since he uses up all his vacation on them instead of his own wife and child. But, tell him that it is just too long for you to host them. And tell him that you want to see him on his vacation time. Suggest that your family visits them for a week maybe and then they visit you for a week? Or maybe he could visit them alone for one trip and then when they come to visit you, you could plan events every day where you could do stuff as a family? Make it clear to your hubby that you are not happy with 3-4 weeks, that something's gotta give. You could also suggest just having them come a couple a weeks twice a year to break it up a little (if finances allow). If your husband is not willing to budge or at least discuss it with his parents, you should discuss it with his parents. It sounds like you like them and I doubt they mean to be overstepping. Just ask them if you could do shorter more frequent visits or visit them too.
If all discussions fail, I think you should just start visiting your family on the days his parents visit. At least you won't have to deal with them and you'll get to see your family more. Doesn't sound healthy for relationships, but my guess is that your husband or his parents will realize they need to make some changes. It's not like your asking them to stop visiting! Good luck.
Oh, and my in-laws come one time per year and stay about 10 days. It is a LONG time for me, but they are pretty helpful and buy all the groceries and diapers and gas while they are in town. It is just hard to get used to my MIL rearranging my furniture, asking probing questions about things that are none of her business and trying to get us new furniture or tv's or whatever. My husband can't stand his mom, so he doesn't take more than a day or two off work when they are here-since I'm a SAHM, it's all on me. I usually fare okay. :) I just remind myself they are guests, they raised my hubby, they love my kids, they only mean well, and they are leaving in 10 days. It's not so bad. :)
My parents have never visited us, but I could not stand my dad much longer than 10 days. My mom is the easiest person ever to live with though. She could live with us and only enhance our lives. :)