Orcus on a bad hair day
First, you've already described people as "almost invulnerable" while shield is up. So I'm not sure that triggering shield on the first attack or the first hit really makes that much of a difference unless they are using it at times when they are only getting attacked once. Sure, there are times when every attack in a round would have missed that it gets used up, but that's not a huge change. If you want to make a meaningful change, make it work like the Defensive Duelist feat and only apply to a single attack.In my opinion, Shield is one of the strongest spells in all of fifth edition. For a level 1 spell slot and your reaction, it grants you +5 AC for a whole round, and since you cast it after you know you've been hit, it's not wasted unless the roll beats your AC by 5 or more. In the campaign I play, we have 3 people with 18 or more armor class and 4 slots of Shield, and it basically amounts to dodging four hits (and being almost invulnerable for the remainder of those rounds) per long rest. So I propose to change Shield's casting time to:
One reaction, which you take when you are targeted by an attack or by magic missile.
This means that when an enemy attacks you, you have to choose whether to cast shield or not before you see what they roll. This means that the spell could be wasted if the attack would have missed anyways, and it makes it harder to guess what the enemy's attack bonus might be.
I wonder how much your table favors Shield. Do the foes ever use non-AC attacks like grapples, shoves, and especially spells with saves. +5 AC is nicely offset by advantage on attacks because one opponent shoved you to the ground after their first attack bounced off the air.
The other table variation I see if when DMs run fewer than the suggested number of combats. 6-8 combats or 3-4 rounds each is about 24 rounds total. Four uses of Shield are quite nice, but not a huge deal. Could be used up in the first combat. There is a commonly held false impression that fewer but tougher battles affect long-rest-recovery and at-will resources the same. This is a good example showing it's false - doing 2-4 combats of 4-5 rounds is only about 60% of the total number of rounds, so a spell like Shield that lasts for a whole round gives a lot more utility in % of combat covered. (Spells that last for an entire combat give even more utility when there are fewer combats.)
So I'd suggest trying to vary up your table a bit with more combats and with non-AC targetting, but if that doesn't get the feel you want then change Shield to just the triggering attack. But let your players know - with three characters with Shield it looks like they found have built around it being very effective and if you are nerfing their character choices they may want to rebuild to take advantage of other opportunities instead.
EDIT: I just read that due to campaign circumstances, you auto-reset all resources after every session. Really, that breaks 5e in multiple ways. I'd strongly recommend using another game system. If that's not an option, I'd recommend slashing all long-rest-recovery resources to a quarter of current uses, and all short-rest resources to half. That will at least approximate 5e balance between long, short, and at-wills.