Yup, you are correct. It will be impossible to eliminate stalemates completely. But I would like to at least make they way less prone to happening in the early levels. Maybe the opponent should give up and still give out the rewards. I was initially thinking of it not being the opposite but maybe it'll feel better to the player that way. I gotta play around with it and see how it feels.
But as you stated, even detecting those stale situations isn't all that simple task to tackle with all the card modifiers. I guess with no "punishment" for stalemating and having the enemy give up would make it more lenient for the detection so it doesn't matter that much even if they sometimes give up even if they still had a fighting chance.