This appears to be caused by having buyB set to minecraft:air, it should instead just be left out of the trade if a second requirement isn't needed.
Tested with examples I took from a spawned trader which wouldn't let me trade a full jar, upon altering the trade to something like the below with no buyB for air the trade was then possible.
Code: Select all{maxUses:2147483647,buy:{id:"tcg:essence_jar",Count:1,tag:{BlockEntityTag:{EssenceJarPercent:1.0d,EssenceJarColorBlue:170,EssenceJarColorName:'{"translate": "color.minecraft.blue"}',EssenceJarCount:100,EssenceJarColorRed:60,EssenceJarColorGreen:68}}},sell:{id:"tcg:card_back",Count:1,tag:{CardBackID:"Standard",display:{Name:'{"text":"Standard"}'}}},xp:0,rewardExp:0b}
To be clear, buyB does work if given a reference the player can actually provide as I've successfully done two items for one style trades, but it's an optional bit of the data. I suspect this buyB air is the cause of most if not all the trade issues present, though I can't easily access them all to confirm.