He's too needy and clingy and is starting to get too demanding and too controlling.
Get a boyfriend with a far more balanced view on romantic relationships. Someone that leaves you alone when you're not with him and with whom you have a great time when the 2 of you are together. Someone with more empathy than your current boyfriend. Someone with a generally more mature outlook on life and relationships. Someone who sets up win wins. Instead of setting up win lose situations, such as you going over when he snaps his fingers and you didn't particularly want.
The thing with guys like your current boyfriend is that they tend to be very intense during the initial stages of the romance. And then over time the intensity drops off and they then tend to take your good points for granted whilst focusing on your "bad" features (from their point of view) which they try to control. With him displaying greater and greater selfish behaviour.
Get out now! Before too much damage to you is done.