I use one of two methods around this problem:
1) Periodically station my squads in my armor stockpile room, go in the equipment menu and set each of them to "Replace clthng", then unpause and let them run around and throw off their clothes and pick up the armor they're supposed to be wearing. Then I go back to the equipment menu and set each one back to 'Over clthng" and unpause and wait for them to run around and pick up half the clothes they just dropped on the floor. Then I unstation them and let them go on their merry way, properly dressed.
2) Assign uniforms that include clothing as well as armor. You have to make sure you don't assign too much clothing or the armor might not fit. I typically would just do a shirt, trousers, and socks. Then just set them to 'Replace clthng". Given a sufficient supply of clothing, this makes sure that dwarves who don't have greaves, boots or mail shirts still are covered.
The root cause of this problem is usually someone slowly carrying a very heavy bin of armor from the armor stockpile to the forge to pick up the helm that just got made, and half your dwarves are assigned armor that's in the bin, so they can't get it to put it on. I now make my armor stockpiles have zero bins to avoid this particular problem. But they are still very lax about actually wearing the armor assigned to them unless I remind them by stationing them somewhere. And the most convenient place for that is in the armor stockpile.
Keith