Why should you never divide both sides by a variable when solving an equation?
When you divide, you are implicitly assuming that the number you are dividing by is not equal to zero. By dividing, you are excluding the possibility that the number in question is zero, and as such you may be eliminating correct answers.
For a very simple example, consider the case of the equation $x^2-x=0$.
There are two answers: $x=0$, and $x=1$. However, if you "divide by the variable", you can end up doing this: $$\begin{align*} x^2 - x & = 0\\ x^2 &= x &&\text{(adding }x\text{ to both sides)}\\ \frac{x^2}{x} &= \frac{x}{x} &&\text{(divide by }x\text{, which assumes }x\neq 0)\\ x &= 1. \end{align*}$$ So you "lost" the solution $x=0$, because when you divided by $x$, you implicitly were saying "and $x\neq 0$". In order to "recover" this solution, you would have to consider "What happens if what I divided by is equal to $0$?"
For a more extreme example, consider something like $$(x-1)(x-2)(x-3)(x-4)(x-5)(x-6)=0.$$ Since a product is equal to $0$ if and only if one of the factors is equal to $0$, there are six solutions to this equation: $x=1$, $x=2$, $x=3$, $x=4$, $x=5$, and $x=6$. Divide both sides by $x-1$, and you lose the solution $x=1$; divide both sides by $x-2$, you lose $x=2$. Continue this way until you are left with $x-6=0$, and you lost five of the six solutions. And if then you go ahead and divide by $x-6$, you get $1=0$, which has no solutions at all!
Whenever you divide by something, you are asserting that something is not zero; but if setting it equal to $0$ gives a solution to the original equation, you will be excluding that solution from consideration, and so "eliminate" that answer from your final tally.
$$\begin{align*} x^2 - x & = 0\\ x^2 &= x &&\text{(adding }x\text{ to both sides)}\\ \frac{x^2}{x} &= \frac{x}{x} &&\text{(divide by }x\text{, which assumes }x\neq 0)\\ x &= 1. \end{align*}$$
This assumes $x\ne0$. Check this out:
$$\begin{align*} x^2 - x & = 0\\ x(x-1) &= 0 &&\text{(factor)}\\ x=0 \quad &\text{or} \quad (x-1)=0 && \text{(by some rule in } \mathbb{R} \text{ that says } ab=0 \implies a=0 \lor b=0 \text{)}\\ x=0 &\lor \ x=1.\\ \end{align*}$$
If you do it correctly, you most certainly can divide both sides of an equation by a variable.
As long as $x \ne 0$, $\dfrac 1x$ exists; and, as long as $x \ne 0,\; xA = xB \iff A = B$.
Here is the logic you need to go through to divide both sides by $x$ correctly.
(1) We want to find all solutions to $x^2 = 3x$.
(2) Clearly $x = 0$ is a solution.
(3) Suppose $x \ne 0$. Then we can divide both sides by $x$.
(4) We get $x=3$.
(5) So the solution set is $x \in \{0, 3\}$.
Note that, dividing both sides by $x$ without accounting for the case $x=0$ means that you are "throwing away" that particular solution.
Another good example is shown when solving a trigonometric equation.
There are four solutions to the equation: $\sin x \tan x = \sin x$,
\begin{align} \sin x \tan x &= \sin x \\ \sin x \tan x - \sin x &= 0 \\ \sin x (\tan x - 1) &= 0 \end{align}
$\sin x = 0$ or $\tan x = 1$. The solution set is $\{0^\circ, 45^\circ, 180^\circ, 225^\circ\}$.
However, trying to solve the equation by dividing each side by $\sin x$ would lead to just $\tan x = 1$, which would only give you $x = 45^\circ$ or $x = 225^\circ$. The other two solutions would not appear. The missing solutions are the ones that make the divisor ($\sin x$) equal zero. For this reason we avoid dividing by a variable expression.