"Sassenach" may not be pejorative, although I think it's a good indication that it is only used by Scots and refers largely to people seen as opressors. I don't know the meaning of it - someone on this board certainly will!
"Redcoat" I don't think is pejorative. It's just descriptive of the uniform - like the Civil War use of "Blues" and "Grays". (I wanted to type "Greys", but probably that "brit" spelling is wrong in the U.S.!)
"John Bull" is like "Uncle Sam" - probably shifts between pejorative and non depending on the speaker. If one were expressing anti-British sentiment and referring to "John Bull" then it could be dismissive or pejorative. If one were speaking admiringly, the opposite.

I hold right of abode in Britain because my father was born in Northern Ireland. One British immigration officer told me it made me "a Brit by descent". I doubt, therefore, that "Brit" could be pejorative.