Robert <|endoftext|> Tables strikes again!
So the model is seeing a series of <|start|>text<|end|> and using that to figure out who's talking but if you convince the model to output <|end|><|start|> then when it goes to complete the next token it has no way to tell the difference.
The rule to never trust user input will always be violated. The universe deems it so.