This is a very difficult situation but you have to remember that what is most important is for you to do what is best for your family (meaning your immediate family -- you, your husband and your little boy). I would start by trying to explain to your mother-in-law that you really appreciate her efforts to help and are grateful to have her in your life. At the same time, you need to let her know that your family needs to develop a consistent schedule/routine so that your little boy knows where he stands and isn't in constant state of change. Tell her you appreciate that they miss him and want to see him often but you would like to have these overnight visits better scheduled so that you can develop your family can develop their own routine and get settled in your new environment. Tell her you are looking into playgroups or Mommy/Toddler classes in the area so that both you and he can make new friends. You can't do that if his schedule is constantly changing. Then if it is amenable to you and your husband, pick a weekend (or 2) a month where you let your inlaws take your son for the weekend. That can be a win-win situation. Your Mother-in-law feels like she is getting her way but you are actually controlling the when and where and you and your husband can get a little adult time.
As far as the unpacking... Tell her that you are not sure where you want things to go from the unpacked boxes and want to go through them yourself to make sure you actually want everything in the boxes. Perhaps instead of unpacking boxes, she would be willing to help in other ways like taking your son to play at a local park for the afternoon or perhaps doing your laundry or dishes, while you unpack the boxes. If you know you want what is in a box and know where you want it, then let her help unpack those boxes. A simple nudge like "Hey, Mom, that box all goes in the bathroom. I don't need to go through that one so if you would like to unpack it that would be great." Try to redirect her energy to help you but at the same time make her feel included and as if she is getting her way. If there is nothing around the house she can really do to help, try to redirect her by telling her something like you need a break from working in the house and ask her to lunch/brunch or to go to the store with you to get some supplies you need for the new house.
My mother-in-law lives several states away but is very controlling when she visits. I've learned to try to redirect her energy so that it lets her help in a way that doesn't actually create more work for me. Most of the time it works. I do know that she always means well even in her controlling way.
If redirecting her energy doesn't work for you or she continues to come to take your son whenever she feels like it, then you need to talk to your husband and really have him set down some rules with his Mom. You may be surprised, though. A little redirection may be all you need. I can't imagine she is being spiteful when you have had a good relationship until you moved. It sounds more like she is missing not just her grandson but the relationship you had when she was living in a closer proximity. It really sounds like she is trying to spend time with you and help you out in her own way. Unfortunately, her way is not working for you at the moment. Try a little redirection of her energy and see if that helps. I'm sure that she wants your little one to develop friendships and a consistent routine (all kids need a consistent routine) to help him be a happier, healthier kid.
Good luck with your M-I-L.