After two years he still needs time to change? Oh, hell no. This behavior is never going to change, and that's unfortunate, because it's gross. I'm guessing this is your first real boyfriend because if you had some more experience with being treated right, you would never stand for this.