The psychological term is Projection I think.
The moral term is Hypocrisy.
But how could it be hypocrisy if the person is
not aware of his own shortcomings in the department when he's insulting someone? Let's say I know someone is more misinformed than me, and he calls me misinformed, so if I use the term "hypocrite" on him, it doesn't make any sense because he's not aware/doesn't think he's misinformed at all.
However, if I use the term "the pot calling the kettle black" like Faldage suggested, I think it hits the mark.

See what I mean?
Well done, Faldage! Any more such phrases/terms?