Incomplete answer. I attempt to prove the theorem in a very roundabout way. It is easy to intuitively understand the theorem, but I would love if someone could simplify this formal proof.
Any complete board consists of contiguous paths, 1 cell thick, where the path is surrounded by other paths, each 1 cell thick.
From Rule 1:
Let us define contiguous paths. For any black cell, moving in cardinal directions, you are able to reach any other black cell, without landing on a white cell. For any white cell, moving in cardinal directions, you are able to reach any other white cell, without landing on a black cell.
Property of path.
The contiguous path must never "fold in" on itself. Imagine the contiguous path as a snake. Let us define some terms.
Snake head position.
The cell the snake head is currently on, in the board (e.g. a black cell).
The cardinal direction the snake head is pointing at. The snake head can turn left or right, changing the direction it is pointing (e.g. if initially point left, and turn left, then finally point down).
Property of snake heading.
When there is a one-cell gap between snake head position and any part of the snake body, the snake heading cannot be in the direction of the snake body. Snake body is defined later. As we shall see, this property is a consequence of no snake squares and no snake loops allowed (which are themselves a consequence of Rule 1 and Rule 2).
Snake movement and Snake body.
There are cells neighboring the snake head position. On movement, one of these cells will be chosen. Which cell will be chosen depends on the snake heading (e.g. snake is heading down, and snake moves, then the cell directly downwards of the snake head position will be chosen). The snake head position updates to the chosen cell. The chosen cell is colored the same color as the previous snake head position. The previous snake head position is now part of the snake body. Also, current snake heads are part of the snake body.
Let's say the snake starts in the center cell of the board, initial heading up.
The following snake movement results in a 2 x 2 square. Snake move. Snake turn right. Snake move. Snake turn right. Snake move. Similar sequences under rotational symmetry are not allowed under Rule 2.
If the snake moves such that the snake head position is beside the snake body, then we have formed a loop. A loop is where the snake head and the snake body form a circular path. Starting from the head and moving along cardinal directions along the body, and without backtracking, we are able to reach the head again. For example, snake move, snake move, snake turn right, snake move, snake move, snake turn right, snake move, snake move, snake turn right, snake move. The center of the loop is separate from other cells of the same color. Hence under Rule 1, loops are not allowed.
Snake branching (not essential to theorem, but I hope helps in solving this puzzle).
For any snake head position, the snake is able to duplicate its head. Each of the heads must have a unique snake heading. We can change the heading and move each duplicated head separately. The snake does not duplicate its body: all previous duplicated heads will be added to the same body. This defines path branching.
Snake bounding (also not essential).
Imagine the opposite action of branching. When many snake heads meet at the same cell, they can bind together into one head. Also, they can bound then branch, for example, snake heads come in from up and down, and bind together. Then, the one snake head branches into two, and exits left and right.
The snake must be one cell thick. Proof: no snake squares are allowed.
The snake is surrounded by walls of opposite color as the snake. Proof: since snake squares and snake looping are not allowed, the snake head / body must not be on either of the two sides of the snake. For example, if the snake is black, then it must be surrounded by white cells.
Since this theorem must hold true no matter the color of the snake, we can reapply Lemma 2 for both walls of the snake. For example, if the snake is black, the walls are white. If we imagine the white walls are white snakes, then by Lemma 1, the white walls must be one cell thick. By Lemma 2, the white walls must be surrounded by black walls. By recursively applying Lemma 1 and 2, the theorem is proven.