Victimofcancerian...I am also a 'victim' of a cancer man!
I wanted to share with you how I deal with him...
I hope you both don't mind me responding. I wanted to validate all that you have said. My husband sounds EXACTLY like yours! He was born July 13. Even though we are supposedly compatible (I'm a scorpio), he drives me absolutely nuts with his hot 'n cold nature! We have about a month of total bliss and then 1 or 2 months of him just being completely disconnected and MOODY! God...the moodiness! I keep reading this is just the cancer nature though. Mine is also very sensitive and insecure and constantly fears I'm going to leave him. And he has that little streak of selfishness too, like you mentioned. For example, he recently erased mine and kids' shows off of the DVR to make sure there was room enough for his. This might just be a "man thing" as well though! Their good qualities often outweigh the bad (depending on your needs). Every person is going to have issues to deal with in a relationship. Are these the ones we would rather deal with as opposed to others? ..or are these issues too big for your needs?? The thing I ask myself is, "If he stays just like he is forever, can I deal with that?" Catch me on the wrong day and I'll say, "no!" haha, but mostly it's "yes".
We've been married 12 years and have 3 kids. He's still a mystery to me on some levels, but I find that he seems to need a big kick in the pants about every few months. He's like a kid who tests his boundaries and just needs to make sure they are still there. I think he actually feels secure when he sees he can still rile me up! It's like a child acting out to get attention. From experience I can tell you that smart@ss remarks don't work at all...but it does make ME feel better! HA What DOES work is a heartfelt, well thought-out letter or email. It's non-confrontational, gives me a chance to think out my words before saying them and gives him time to think about what I said before responding. I pretty much write the same letter to him every few months, but hey...whatever works! 
I have started studying astrology in the past couple of years, though I'm still only a 'beginner'. You should start delving deeper also. It's very fascinating just how accurate and detailed it can be. It is all very mathematical and precise. There's no psychic power involved, although intuition does help (so they say). You can search the internet for a free birth chart and see what sign each of your planets are in, then search the internet for each of those combinations. You can find out SO much about yourself and your dude. It goes even deeper than that but I haven't learned about the deeper stuff yet. 