Are there grammatical etiquette guidelines as to whether to refer to a person from Great Britain as a British person or an English person? Is referring to a person as a Brit insulting, even if no insult was intended?
The Brits call themselves Brits.
It's just an abbreviation, not a derogatory term.
You could avoid it if being formal, but in everyday conversation it's fine.
You could further sub-divide into English, Scottish [or Scots... never scotch, that's a drink not a person] & Welsh, but you'd need to be certain which they actually were.
It's easier not to guess & just refer to them as British.
Grammatically, it's not incorrect if we say a British person or an English person, but such phrases seem a bit awkward. I think it's common and natural if we just say "He is British" if he is from Britain. However, we can say "the British" to mean people from Britain. If a person is from England, the usual word is Englishman.