I am currently stuck at understanding how to code a comparision scheme
for any two encrypted values
This is to be expected as what you are trying to do is impossible with standard Paillier encryption. To see this, first note that Paillier encryption is IND-CPA. We are now going to construct an attacker that wins the IND-CPA game with probability $1$ assuming they can relieably check for equality of two encrypted messages and thus proves that a scheme supporting this cannot be IND-CPA and thus Paillier can't actually allow for this.
Let $=_p:\mathcal C\times \mathcal C\to\mathbb B$ be a predicate that returns true for a given pair $(c_1,c_2)$ iff $D(c_1)=D(c_2)$ that is if the decryptions of the given ciphertexts are equal. This predicate models the functionality you are trying to realize. Now let's start with the IND-CPA game:
- We pick two arbitrary distinct messages $m_0,m_1$ of the same length (the exact values don't matter) and send them to the challenger.
- We receive $c_b=E(m_b)$ with $b$ being randomly chosen by the challenger. We compute $c_0'=E(m_0)$ on our own using the public key.
- If $c_b=_pc_0'$ we return $b=0$, else we return $b=1$.
As $c_b=_pc_0'$ if and only if $b=0$ due to the construction of $c_0'$ and the way $=_p$ works, we always win the game with probability $1$ which yields the "advantage" $0.5$ which is clearly non-negligble and thus breaks IND-CPA security.