It may not come as a surprise to you that most of us are more demanding of ourselves than we are of others. The need to be perfect is another way to set yourself up for failure and enhance the feeling that you are not acceptable. We all make mistakes. Accepting less than perfection simply means recognizing the limitations inherent in being born a human being. Learn to value who you are rather than who you could become if you were to do everything you can imagine doing and doing those things perfectly.
Nobody has the time and energy to do all of that.
The idea that you should always be able to attain your goals as long as you work hard enough is another factor interfering with self-acceptance. You will reach many of your goals and should give yourself credit for having done so. Some of us have trouble seeing our successes because we focus so much on our failures and many times the failures come after a lot of hard work and personal suffering. It seems that all that hard work should pay off in our having reaching the goal we set out to achieve. It is hard to accept that a given goal may be out of our reach and that may be because of many factors, including the fact that we may not have the talent or skill needed to reach the goal.