You have correctly stated the solution to your own question, and that is to learn to accept yourself and to love yourself as you are. Thinking ill of oneself is also a form of ego and must be removed. Please be regular in your daily sadhana, doing it in its entirety, with special focus on the cleaning process.
Cleaning is important in our spiritual life. Why? Not to become pure, but to remove impurity. There is no such thing as becoming pure. Purity is like love, purity is eternal. All that you do is to remove the imperfection, and the perfection is there