JSON is probably popular because JS was popular and it’s a subset. And being a programming language that’s is typed by humans, so those special characters would not have naturally featured.
For data, if we are going to use reserved characters, maybe we just use protobuf and let the serialisation code take the strain.