Companion Won't Stay Equipped

Solution 1:

You put some of this in an update to your question, but it should really be in an answer:

I've only had issues with Preston switching back to his original armor, which is a colonial duster. Everyone else sticks with what I tell them. This can be fixed by removing the armor from his inventory. If the armor is not visible when you attempt to trade with him, it should show up once you tell him to wear something else. After that, he mostly cooperates. I have occasionally had him magically generate a new duster and don it after a main Minutemen quest.

Any companion will switch back to their original weapon when they run out of ammo for all the weapons you've given them. Their original weapon uses magic companion ammunition and never runs out. You don't appear to be able to remove the default weapon from their inventory.

Solution 2:

Supply ammunition for the weapons. If so remove the lesser weapons from their inventory.