Maxperson
Morkus from Orkus
I'm sure there are lots of ways to spin it. At the end of the day, however, the players are upset because the fiction in their mind was different than what was in the DM's mind. And, here's the thing. The DM knew that their fiction were different. The DM let that happen. On purpose. This is exactly like the player running into the chasm to die, and the DM saying "Your fault."
The DM didn't know until later when he realize that some of the players were upset. Until then, it was just a mistake which could happen.
I honestly don't see how the character wouldn't have seen the gauntlets and ring right there in his face. The blacksmith saw them. They were standing right beside each other. The blacksmith was going over each bit of the armor in question, right there, as the player character watched him. What more do you want? You should always give players the benefit of the doubt.
If I were a shady blacksmith and I saw a ring on the gauntlets, I'd not bring attention to that fact by parading the gauntlets and ring in front of the PC. I'd keep them out of sight and ask my question about selling the armor as a set.
Imagine this scenario:
DM: All doors in the Temple of Kaggoth have two locks. It's one of their things.
later
Player: I search the lock for traps.
DM: You don't see anything.
Player: I pick the lock and open the door.
DM: The door is still locked because you didn't pick the second lock. The trap on the second lock, which you didn't check, goes off.
The player was looking at the door! The DM should remind them that there is, in fact, a second lock.
If the door was actively concealing the second lock in order to hide the ring, then...
It's a slightly different scenario. In your example, there's no way that the two locks are out of sight. With the armor there are ways that the gauntlets and ring could have been.