There is a theorem which says given any two ordinals $\alpha$ and $\beta$, exactly one of the following holds: $\alpha\in\beta$, or $\beta\in\alpha$, or $\alpha=\beta$.
But is there an algorithm to compare any two ordinals?
For example, how do I compare $(\omega\times 2)\omega^\omega$ and $\omega^\omega\times 2$?
If you are talking specifically about notation using addition, multiplication, exponentiation and symbols like $\omega$ and finite ordinals/numbers .... then I think there is no doubt that there should be an algorithm. It would be interesting to see full details of such an algorithm though (because I haven't seen it).
I think there is a recent book which discusses the Cantor's system in a fairly remarkable/full detail (in what seems to be beginner friendly manner). I only know of this particular exposition, which goes in that much detail for $\epsilon_0$ (though I haven't studied it myself in detail).
I don't re-call the exact name now but I would link the name of book in a day or two maybe. But maybe someone else can link to some other good references also in meanwhile because I would be interested in that too.
For your specific example: $$(\omega.2).\omega^\omega=\omega^\omega$$
$$\omega^\omega.2=\omega^\omega+\omega^\omega>\omega^\omega=(\omega.2).\omega^\omega$$
The first equality can be seen pretty much in a similar manner in the other question you asked. Hence we have: $$\omega^\omega.2>(\omega.2).\omega^\omega$$
Edit:
There is a catch in a problem like this I think. Because we are allowing different "strings" of finite symbols to denote the same ordinal ($2.\omega$ is same as $\omega$ and so on), I "think" that a problem like this may be made undecidable (even for recursive ordinals) .... that is in a more general sense. Maybe someone else can elaborate this particular point better and in more detail.