Hey, its difficult I know man. I am in a similar position as you, and 2 years older than you. And look I am still alive. Only GF I ever had wasted my time for 2 years and didn't really care about me. Good girls are hard to find in modern society. There is nothing wrong with you man.
But I want to make one suggestion and hope you don't find it offensive. The way you list personal information about yourself and not just any personal information but things like,
Here is a list of all that is wrong with me:
Num 1
Num 2
Num 3
Now please tell me why girls don't like me.
First of all its dangerous to post such info online. Second of all, it makes it sounds like you got no self confidence.
Something I learned over the past few years is, you have to actually think like, "There is nothing wrong with me, and if anyone doesn't like it, I don't care"
You might have problems but you don't tell people about them, except maybe your best friends and parents and counselors of some sort. You work on them in private, but act like there is nothing wrong with you on the outside.
And you know what, that is what girls/women actually want to hear. You need self confidence. That is step number 1.
The worst mistake you can make is to mentally seek for approval from any girl, or any person at all really. You need to have self respect and know your own value.
Only seek approval from God, try to perfect yourself according to his standards but nobody else's. Not society, not other people (maybe your parents).
Once you have self confidence and self respect, all else will come in time. But unless you have those two qualities you will have a very hard time, and if you do get married it will be to someone who bosses you around your whole life. At best.
It took me a while to learn all this and to understand it. So remember self respect, and self confidence. If you have those all else will be provided by God.