Should I cut it off or tell him how I feel?

I've been casually seeing this guy for almost a year now and it's had ups and downs. I really liked him and I believe he has feelings for me/is attached to me to some extent, but he can't commit to anyone... I decided to slowly distance myself for the past few weeks because I am sick of feeling like shit after seeing him. I think he felt I was pulling away so he began reaching out snapping me etc. He was away for awhile and got me a present. I was curious what it was so I caved in and saw him... He was extra sweet and affectionate kissing my head holding me etc... and it was nice and I really care about him/think i love him but I care about myself more now. I don't want to lose my power and fall into the cycle again. Should I just cut him off or risk it and tell him how i feel?