Frankly, based on the comments you wrote, I think he's an ass. So yes, I absolutely think you did the right thing.
A few thoughts come to mind:
1. He's trying to put all of the blame on you (you nag him about money, you are always on his back, etc). Someone who actually cares about another person does not break up with them and tell them this. Even the biggest loser I've dated wasn't unkind in his breakup.
2. You have a child. He doesn't want the responsibility. Fine. But orginally, he was fine with it...willing to get married. What if you get back together, and he changes his mind again? You need stability with a child, not a flake. Also, the fact that he said "YOUR kid" definitely sends a red glad that he isn't ready to accept your son in any way as his own. Not good.
3. He wants to "have his cake and eat it to". He wants to live the single life, date around, have his freedom, but still wants to know that his future may be secure. I think he sounds very immature and no where NEAR willing to settle down. I think you will end up waiting a very, very long for him to "come around".
So I think his breakup should be a permanent one. Who knows, maybe knowing that will make him shape up. And maybe it won't. I think you are far better off without him, though.
But I know it's going to hurt. And I know everything I've written is easier for a stranger to see than someone in the middle of it, and I know that breaking up is easier said that done (emotion-wise). So big hugs to you.