A lot of people are selfish to the point of impudence. What they do best is expecting the best in their partners but do not take a look at themselves. They are always busy dealing with how their perfect man or woman should be, but they do not bother about their own selves.
For this reason, we end up expecting too much than what we deserve. I'm not saying that we should not build high expectations, but dreaming in vain serves no purpose. When things backfire, our next destination is heartbreak. If we can't cut our coats according to our cloths, such heartbreak is more likely to happen. So, we need to begin with a little introspection first.
Make a list of all those points. Write them down. When you see words taking shape in front of you, they make a better impact on your mind. Be honest with yourself. This list is only for you, no one else is going to see or read it, so you can be as frank with it as you want. It doesn't matter if your weaknesses are far too many in comparison to your strengths. Once you have this list ready, start planning your strategies. You have to think of a two-pronged approach.
Everyone has imperfections, but not everyone realizes them. The very fact that you can come out of denial and accept the shortcomings within you will mean a lot to you. The first step to improvement is acceptance.
Some of these weaknesses will be trivial things; things like you don't know how to dance, don't know how to approach people, have a habit of not listening to people when they are conversing with you, and so on. It is easy to make some improvements on them. Some of them may be severe, such as financial or health problems. Find out what you can do to improve on them.
At the same time, do not forget the underlying theme here [LOVE] a person truly loves you only if they can accept you as you are. But that does not mean you do not try and improve yourself whenever you can. If you want someone to fall in love with you, then it is your responsibility to be a better person for them as well.
Additionally, do not ignore your strengths. If you have something that could be great in a relationship, work on it a little more. Continue making improvements wherever and whenever possible. A little education never hurts. Practice your expertise to perfection. Most of the time, people will ignore your weaknesses if your strengths are great.
That is when you will start understanding what love is, and what kind of person you are. When you have these two things firmly entrenched in your mind, you will already be on your way to finding love at the drop of a hat.