IMHO, this is a "problem" that could have many answers. If I were you, the first thing I'd do is see an endocrinologist (or your GP) and get your blood testosterone level checked. It's quite possible it's been low for years, perhaps even from puberty when your dick should have experienced most of its growth. If your T level is currently low, start using the gel (Androgel or generic equiv) and start a pumping routine to encourage growth ... it's what I did in my late 40s and I've gained several inches in both length and girth! It will take time (maybe a few years), but it's far better than it damage your self-esteem. Just my opinion ...