Rather than generic terms like "+1", how about quality, material, or property modifiers?
Cloth: Padded -> Reinforced Cloth -> Brigandine -> Reinforced Spidersilk
Hide: Bullhide -> rhinohide -> -> -> dragonhide
Leather: Tanned Leather -> Boiled Leather -> -> -> Gryphon Leather
Chain: Ring Mail -> Chain Mail -> -> -> Elven Chain
Banded: Scale -> Splint -> Lamellar -> -> -> Dwarven Lorica
Plate: Plated Mail -> Half Plate -> Full Plate -> -> -> Articulated Plate
With modifiers based on craftsmanship, enchantment, coverage, etc.
"Fine", "Masterwork", "Muffled", "Reflexive", "Fire Eater", "Sanctified", "Shirt"/"Cuirass", "Hauberk", "Haubergon", "Suit", etc.
As to making certain armor types preferable to certain classes, or multi-class builds (if those become an option) here are some possibilities:
Armor skills, either trainable or autogrant, improving a certain type of armor based on class levels.
Armor specializations: Broad - Light Armor, Narrow - Cloth Armor, Focused - Brigandines
(Rogue gains light armor at level 1, improves at 3, broadly specializes at 5, improves at 7, narrowly specializes at 9, improves at 11, focuses at 13, improves focus at 15 (stretch or compress based on max levels)
(Fighter gain armor of choice at 1, improve at 2, gain second armor choice at 3, etc.)
Or, each armor type has strengths and weaknesses, heavier armors offer more protection, and reduce speed, or are noisier, or have some other drawback.
If the goal is to make each character use multiple types of armor based on the situation, inherent bonuses and drawbacks shouldn't effectively cap stat contributions, but might offer other intrinsic tradeoffs.