The above answers seem to nicely summarize why charge is conserved in every frame of reference. I would like to take a different approach as to why that makes sense, and why the charge conservation law holds.
1. Charge, current and conservation:
The most simplest way to state the conservation of charge is to say, $$\frac{dQ}{dt} = 0$$
That the rate of change of charge in time is $0$, implying that the quantity of charge is a constant.
But, sometimes charge can decrease in a system. This does not violate the supreme principle, but rather states that charge can 'leak' or flow through an area, causing the charge in the system to decrease, and the charge outside to increase. So, the amount of charge in the entire universe is the same, but for smaller systems the above equation may not hold true.
Consider a box with some charge inside of it. The charge can flow out through any of the faces of the box, thus decreasing the overall charge inside (it can also increase if the charges are instead entering the box). So, you need to take into account this flow of charges, called a current to make sure that the conservation law holds. The resulting mathematical form is:
$$\frac{d\rho}{dt} + \nabla . J^i = 0$$
where the $\rho$ represents the density of charge inside the box, and $J^i$ is the current vector, because current can flow through the $x$, $y$, and $z$ axes; so we use a vector to keep track of them all. What the above expression says is: the rate of change of charge in the box and the rate of change of current flowing in or out of it, is going to be conserved.
2. Four vectors, dot products and Lorentz invariance:
In Relativity, we use something known as four-vectors, which are 4 dimensional vectors. Usual vectors have only three components: one corresponding to each dimension of space; in Relativity, we consider a fourth dimension: time. 780
So, vectors in Relativity have four components, one corresponding to time, and three to space. We denote these vectors by $$A^{\mu}, \mu = (0, 1, 2, 3)$$ where the $0$ index corresponds to the time component and the other three to the space components.
Now, let's move on to Lorentz invariance. In Special relativity, whenever we want to consider events from a different reference frame, we use something known as Lorentz transformations. I am going to leave a few nice resources in the further reading below, but for now, that is enough information.
If a certain quantity does not change when the Lorentz transformation is applies to it, we say it is Lorentz invariant.
So, some of the things that are always Lorentz invariant are the dot product between two four-vectors. Again, for length purposes, I will leave a link to some resources below, but simply put, dot products between two vectors can be denoted as: $$Product_{dot} = A^\mu B_\mu$$
The only constraint is that the index of the four vectors should be the same and they should be repeated upstairs and downstairs. Expanding this expression, we get: $$A^{\mu}B_{\mu} = -(A^0 B_0) + (A^1 B_1) + (A^2 B_2) + (A^3 B_3)$$ which is a scalar and is Lorentz invariant. These scalars are called Lorentz scalars.
3. Bringing it all together:
In Special Relativity, we denote the charge and current of a particle as a four vector $J^{\mu}$. The time component is $\rho$ and the space components are $J^i$. There is another four vector $\partial_{\mu}$ which is defined to be: $$\partial_{\mu} = \left (\frac{\partial}{\partial t}, \frac{\partial}{\partial x}, \frac{\partial}{\partial y}, \frac{\partial}{\partial z}\right)$$
Okay. Now, particles have some properties, like mass and charge that do not change when you shift frames. Similarly for the conservation of charge, you can write it as $$\partial_{\mu}J^{\mu} = 0$$ which is a dot product, so it is naturally a <PERSON> invariant.
4. So, can charge vary for observers?
I took an unconventional way of answering here, by first showing the true way of expressing the conservation of charge and then going through a long way to show why the law hold even when our frames change. 418