Most of the suggestions i have seen seem to remove the gambling aspect of it (e.g. pick your attribute with the lowest possible value, see every attribute once before repeats, have a reset/infinite but scaling cost), but those also seem like they would have frustrations of their own.
My recommendation is something a little different:
The first time you pick, say from a list of 4 where you only want 1, your odds are 25%.
The next tempers can not repeat the current attribute, so no “damage to crowd controlled enemies” 4 times in a row. It also improves your odds to 33%. You could still run out of tempers without hitting the attribute you want, but it would still be less frustrating.
When/If you get the attribute you want, you can toggle a button in the interface that will make tempers keep the current attribute and only reroll the value. This lets you keep gambling while removing the chance your item will be of no value at that point. You could even make hitting the toggle cost a temper.