@Bettafin,
First of all;
there is no such thing as a narcissist.
Actually, there is a DSM category for "narcissism", but if you want to go that route then you would need to take him in to a professional to see if he meets the metric on some scale (and even that isn't very scientifically valid).. Assuming you haven't done that, then wondering if he is a "narcissist" is the same as wondering if he is a "jerk" or an "idiot". It is a silly question.
Is a relationship that you want to be in?. This is the important question, however the difficulty with answering this question is that it puts the responsibility on "you". You have to decide if this is how you want to be treated.
So you have a choice. Stay with him, or don't stay with him. Although, if someone made me feel bad, I wouldn't stay with them for very long. There may be ways to make the relationship better... you could even try couples therapy.
But putting fake psychobabble labels on your boyfriend doesn't help.