Solution 1:

Consider the following. On the one hand we have $$(\{a\}\cup\{a\})\cup\{a^*\}=\{a\}\cup\{a^*\}=\emptyset$$ but on the other hand we have $$\{a\}\cup(\{a\}\cup\{a^*\})=\{a\}\cup\emptyset=\{a\}.$$ Associativity of "$\cup$" is built into the underlying framework ($\cup$ isn't a primitive operation, it's defined in terms of $\in$, and the logical associativity of $\vee$ directly leads to the algebraic associativity of $\cup$). So this is a genuine problem.

One hope is to fix this using multisets, so that $\{a\}\cup\{a\}=\{a,a\}\not=\{a\}$. However, even this doesn't really solve things: what about infinite unions? E.g. for $z\in\mathbb{Z}$ let $x_z=\{a\}$ if $z$ is even and let $x_z=\{a^*\}$ if $z$ is odd; what is $$\bigcup_{z\in\mathbb{Z}}x_z?$$ A case can be made for it being $\{\}$, or $\{a\}$, or $\{a^*, a^*, a^*\}$, or ... by looking at the union in different ways. And while there might be a natural way to handle this specific case, how are you going to treat the general situation where the index set doesn't have any obvious ordering (or similar disambiguating mechanism)?

The only way I see to make antielements work properly is to not only pass to multisets, but also drop the axiom of union. But this is a huge loss.