I’m not really into this stuff, but from what I can tell, liberal became an insult purely because conservatives wanted to label liberals as inferior. That’s about it. Some leftists also use liberal as an insult, though to a lesser extreme.
How conservatives use it, liberal means someone that is too sensitive, accommodating, weak, and evil (especially in Christian terms).
How leftists use it, liberal means uneducated, hypocritical, insufficient, and turncoat/traitor.