You're welcooome!
On the combat department: currently, it did indeed felt less frustrating, sadly not yet engaging.
The more I think of the combat, the less I see how to balance it (guess writing my thoughts about it gave me some inspiration, sorry for the essay~) : if the card roll does not give you enough power, or a winning combination, it does just feel frustrating. I don't remember how monster damage is computed, but I never had the feeling I could do something to minimize the damage taken. It felt more like "roll a dice? no luck? you're screwed that turn!"
On the other hand, when the cards are too generous, it become so easy to break the seal and keep 10+ damage than having the right number don't really matter anymore. - in that case it's on the bland side by the lack of challenge.
The card matching is only enjoyable when your available resources is pretty close the the monster's card ; in your favor, so it become a puzzle of "how can I break all rack as much damage as I can" - however it is not that rewarding since you're only able to rack 2 or 3 extra point of damage on a pretty big health bar, and I do assume that will become stale pretty quick too.
In all cases, I think this system is, for now, a pure optimisation problem that sadly don't propose the player any meaningful or long term choice.
Note than I have zero idea on the kind of player you target, nor if having a challenging/brain racking fight are your objective - having something simple that change for the story may be your goal, in that case it's pretty spot on (even if not my cup of tea) - in short: please stay true to your game vision! I'll be happy if any idea below inspire you or are used in the game, but only do so if it is in line with what you had in mind! (and also beware I have zero clue if these idea would really be fun, nor how long they would take to balance)
Not having enough resources to break everything could be OK, or even fun, if each card to break had specific effect, and you're tasked to decide which to destroy (like, "deal 3+X damage on player (X being the current card value)" ; "deal 20 damage", "this card heal the boss by 10" ; "when breaking, that card inflict 2x the extra amount as damage to the boss, up to 10" ; "if broken the boss will have 1 less card the next turn", "can only be broken by matching it value exactly, do XXXX")
Having more long term decision could also be nice. It could be done with card that last until destroyed ("deal 3 damage, then the card take 5 damage, does not disappear at the end of the turn") ; or the ability to player to retain card from one round to the other and draw X between round - up to a certain hand size (this way they decide to either spend their card now, or have more card the next round).
That ability to keep card would mesh well with some vision on what card the boss will play on the next turn (it create an "should I keep my card to counter that big attack that is coming, or should I try to dump as much damage as I can now?")
On alternative (or additional) idea to give more interesting decision to the player would be to give a "power" to each card. Currently, each card have a "if it stay in your hand, deal cardValue damage to the boss".
Instead they could have a variety of effects ("draw an extra card next turn", "deal X damage to the boss" (that may not be the same value than what is on the card), "next turn, all extra card give +1 damage to the boss if kept in hand") to give the the player some thought about which card they may want to pick ; or if they prefer matching the boss's card value for the extra damage or keep specific cards instead.