I went through something similar once, many years ago. Never again. I've had many friends who have gone through it, and I have one who is going through it right now and is really on the verge of a divorce. Really, she's on the verge of a divorce. She asked just earlier today if she could come stay with is for a few weeks.
If you've already tried to explain to the brother-in-law, and especially to the husband, what your concerns are, and that isn't working, distance yourself by pretending neither he nor his mess is there. This will be REALLY hard if you're a fastidious person, and will make your husband think you've lost your mind.
When you cook, cook enough only for two people. One of those would be you, the other would be your husband, or the BIL if he chooses to give his breakfast, lunch, or dinner to the BIL. That's his choice.
When you clean, clean up only your own messes. If you spill something on the counter, wipe it up. If the BIL does it, just leave it. If he leaves empty cans setting around the house, just leave them. If he decides to cook since you won't cook for him, and he leaves a mess, don't clean it up. After it becomes bad enough, explain to your husband that you can't cook until the stove/oven is cleaned because it's a fire hazard. See how the hubby likes either ordering pizza or cleaning the kitchen after his brother ever night.
There are a lot of other things I could say, but you get the idea. Unless slavery has been reinstated and I haven't heard about it, there's no reason for you to live like this. You can simply stop cleaning up after other people, but for a while you're going to have to grin and take all the cans around the house. I'd be willing to bet your hubby will put a stop to it once you just stop doing it. That's going to mean either he has to start doing it or get the BIL to start acting like an adult.
It would be unusual for your hubby to be willing to do this himself. Most adults aren't willing to clean up after other adults. The problem is that you're the one doing it right now and the hubby isn't feeling any pain from it. As long as you keep your own standards, you're good to go. If the hubby says, "Hey, why isn't this mess cleaned up?" and you just smile and say, "I'm not sure. I didn't make it," he'll eventually get the picture