M., this stage of his life takes a LOT of patience. I don't think there's much more you can do aside from what you're doing.
The only thing else that I would do is to find ways for him to fulfill his independence in other ways so that he will not have such a need to fight you. He might be wanting to dress himself; teach him to do this. He probably wants to help you in the grocery store, which is impractical, but get him to do things with you at home. Even if you have to go around after him when he's not looking and correct what he's done -- helping you put clothes in drawers, for example -- it's worth making him feel that he's capable. I think that's what he's asking for.
Also, make sure that the clothes he doesn't want to wear, aren't clothes that are uncomfortable for him. He may be trying to tell you that these clothes make it difficult for him to move, that they're too tight under his arms, and so forth.
Another thing you can do is to take him outside and show him just how cold it is, and put on the jacket when he feels cold, because he surely doesn't like being too warm inside the house with the jacket on.
Also, try to set up errands so that he doesn't have to be rushed to perform things. I know that's not always possible, but if you're in a hurry to get ready and get out the door to be on time for things you have to do, but he's going to make it a power struggle if he feels forced or pushed. Give the process a little more time and see if you can get him to put on the jacket himself. Try to make it pleasant.
He's probably trying to tell you, "Mom, I'm not a baby anymore, I want to do things myself, and I want to help you, too." Try to find ways where he can do this, because this is the stage of life he's at right now.
Above all, patience, because he can't say stuff in words yet, and it's hard for you to know what he's complaining about.
Peace,
Syl