A second question on "Show a TM-recognizable language of TMs can be expressed by TM-description language of equivalent TMs"
Recall the padding lemma: given $\langle M \rangle$ we can compute $\langle N \rangle$ where $N$ is equivalent to $M$, but has a longer representation. (Essentially, we can always add more irrelevant states to a TM, effectively.)

Then, define $E_0$ to do the following:


Run $E$ until $M_1$ is produced.
Let $N_1 = M_1$
Output $N_1$
Continue running $E$ until $M_2$ is produced.
Let $N_2$ be $M_2$, after as many paddings as needed to make its representation larger than $N_1$.
Output $N_2$
Continue running $E$ until $M_3$ is produced.
Let $N_3$ be $M_3$, after as many paddings as needed to make its representation larger than $N_2$.
Output $N_3$
And so on.


By construction, $E_0$ prints larger and larger strings, hence its enumerated language is decidable: this is the wanted language C.

We now need to check the quivalence. For any $N_i$ in the language enumerated by $E_0$, we find an equivalent $M_i$ enumerated by $E$. Vice versa, for any $M_i$ in the language enumerated by $E$, we find an equivalent $N_i$ enumerated by $E_0$.