I think you are too hard on yourself.
You're only 21 and been working for 3 years. Sorry to tell you but you probably have another 44 years to go
You have a house, a wife and a child plus another on the way. Sit back and enjoy it all while you can, because one day it could all be taken away (god forbid obviously) but it sounds like you don't appreciate what you have.
All the best