You start out telling us “hes great and everything,” and then proceed to tell us how “hes never there.” One of the most important aspects of being a great partner in any relationship, especially intimate ones that may lead to a lifelong commitment, is one’s ability and willingness to “be there.” You’re looking for a partner—partner implies effort on both his and your parts. Any relationship that is mostly (or entirely) one-sided is destined to be short lived.
I’d recommend getting out of this sinking ship immediately. While you probably can’t imagine not loving him now, eventually, you will grow to resent him. Yet, if you can’t be honest enough with yourself now to admit that he’s not as great as you’d like to believe he is, you won’t be honest enough with yourself later to admit that his constant refusal to live up to your (probably unrealistic) expectations has made you grow to loathe him. You’ll probably try to ignore those feelings, but will be unable (or unwilling) to do so. Since you’ll also be unwilling to face the issue head-on, you’ll probably turn to some sort of passive-aggressive behavior in an attempt to drive him away. Eventually, he’ll tire of your neediness and your nagging and turn to the arms of another woman, at which point you’ll be able to blame the end of the relationship entirely upon him, and, if he was unlucky enough to marry you, you’ll be able to walk away with half of his money and belongings (more, of course, if he happened to have also impregnated you).
That is, if history is any sort of guide.
This could all be easily avoided, of course, by you making the conscious decision—today—to grow up and take responsibility for your own life and emotions instead of making the false assumption that your boyfriend (or anyone else in the world) must some how bail you out of difficult emotional times. Let me hit you with some deep philosophical truth—life, many times, is a bitch. People die, people move away, people are often shit. If you don’t learn to deal with life’s bitchiness yourself, you are going to have a really, really, really difficult time until you realize that everyone will eventually let you down.
I’m sorry if this sounds really pessimistic, but I don’t intend it that way. Instead, think of it like a promise: the day you learn to deal with your troubles on your own is the day you can truly have an intimate connection with someone you love. That will be the day you can be with someone because you truly love them, not because you need them. The former is much more fulfilling than the latter. Trust the voice of experience.