Here's my proof:
We designate an active pool that includes precisely those integers that will be involved in the process at some point, and for which there exists at least one integer such that performing the process on the pair actually results in the changing of the set. Then we implement the following iterative process:
Choose any two arbitrary integers in the active pool and replace them by their GCD and LCM. Then, if the GCD will never be used for the process again, we remove it from the active pool. If the GCD is $1$, it is also removed from the active pool. Otherwise, it is placed in the active pool, and the process reiterates.
Clearly, this process halts in finitely many steps, as size of the active pool is reduced to nil, and thus when the numbers stop changing.
I don't think that the proof is incorrect, but it feels uneasy. So, is it actually correct?