Only you can answer this question!
In order for any of us to "know" if our partner is "right" for us we must truly know what we want in a mate.
You may find it beneficial to write down all of the traits you want in your ideal man and then compare them to what you know to be true about your man.
Another reason why we select the wrong partners long-term aside from not knowing what it is we really want...etc It's because we'e constantly evolving. A young lady in high school may be happy with a cute jock who has a great sense of humor. They don't call it "puppy love" for nothing.
As she gets older she may not feel that's enough.
Our lists of desires changes a great deal from ages 18-35. That's why the divorce rate is higher for very young married couples.
Most people also jump too fast and too deep into relationships without truly getting to know someone.
Awhile back I wrote a hub regarding relationship happiness.
It may be of some help to you.
Best of luck!