Привет,
Прощу прощения, что без примеров кода. Но можно сделать проверку в тиках игрока, и проверять чему равно оружие которое игрок в данный момент держит в руке.
Если в тике у нас у руки предмет не равен тому предмету который должен быть в руке, то мы убираем щит из второй руки, если же есть, то выдаём его с атрибутом нужным атрибутом прочности.
Это пример как это можно реализовать. Немного костыльно, но как способ может подойти.