He's tantrumming to prevent you from putting him to bed. Allowing the tantrums to run their full course is causing him to vomit and injure himself. CIO is for full, tired, satisfied kids who have had their bed time routine to cry when learning to sleep on their own so they learn to sooth themselves to sleep, not to be a battle of the wills or raging tantrum enabler which eventually wears people down because of vomitting and self injury. You have been very kind and patient, but it has made the problem worse. Does he throw tantrums at other times? Are they allowed/ignored?
You need to make sure he has had a full day of exercise, sun when possible, lots of healthy food, lots of love and attention, a good (but brief and efficient-everyone needs some rest at night) bedtime routine, and when you put him into bed, you need walk away confidently, and to discipline the tantrum immediately when it first begins with a "no fits" warning, and a consequence on the second warning if the crying starts to escalate. Allow him to cry for a moment or two, and then repeat if he spins it into an angry tantrum. He'll rebel and escalate at first since he's obviously very attached to keeping control at bed time, but you need to prevail for his own character and respect for you. You love him, but he needs to go to bed. That's it. Once he sees that deciding to continue the tantrum has a consequence EVERY time, he'll decide not to do it.
He seems used to not listening if he was able to get away with being silly on the couch and pushing back bed time once he succeeded in not going to his crib because he cried so hard he threw up. It's not too late, just take control.
Do not allow the hysterics to be totally self inflicted and long like this. Never let it escalate to vomiting. It is not CIO, it's tantrum central. He is old enough to understand discipline just as he is old enough to be manipulating you with fits about bed time. Be sure not to allow the fits in the daytime for anything either. The overall consistency will make it work faster once he understands this is totally not ever allowed. He sounds like a strong willed one -or he is just managing to push his boundaries pretty far without effective resistance.
Be sure dad takes center stage on this discipline when he's home, or at the very least always backs you up. It will work best coming from him. Dad needs to be tough.
He's almost 2, discipline now is key for peaceful 3's 4;'s, 5's and 6's and beyond. Taking the hard line up front with our 3 at bedtime has made our nights super sweet. I wouldn't trade it, and they all love going to bed on their own. You can do it!