Is the gradient of the self-intersections of a curve zero?

Assuming $\phi(x,y)$ is continuously differentiable in a neighbourhood of $T_i$, yes, because otherwise you could use the Implicit Function Theorem to get a unique curve in a neighourhood of $T_i$ satisfying $\phi(x,y) = 0$.


If we agree that $\phi$ is continuously differentiable (so $\nabla \phi(x,y)$ is a continuous function of $x$ and $y$), then yes, this must be true.

The reason is that, if $\nabla \phi(x_0, y_0) \neq 0$ for some $(x_0, y_0)$, then the implicit function theorem guarantees that (locally) we can write $y$ as a function of $x$ or $x$ as a function of $y$. However, at a self-intersection $T_i$, our curve fails the horizontal and vertical line tests, so we cannot express $x$ as a function of $y$ or $y$ as a function of $x$.


A different argument

(For the case where two branches of the curve have distinct tangents at the intersection point)

Since $\phi$'s values do not change along the curve, we know that if $\phi$ is continuously differentiable then any of its directional derivatives along the curve is $0$.

At an intersection point, we would have a null directional derivative along two linearly independent directions. Having projection $0$ along two linearly independent vectors, we know the gradient is $0$.