The constraint "without complex math" is highly subjective. I'll take it to mean "without Geometric Algebra / Clifford Algebra" (which clarifies what is and what isn't a vector, and what rotates them, in arbitrary dimensions).
Choosing from https://en.wikipedia.org/wiki/Rotation_formalisms_in_three_dimensions, I like the "Vector Transformation Law" rotating a vector $p_i$ about an unit vector $n_i$ by an angle $\eta$:
$$p'_i = R_{ij}p_j $$
I don't think of $R_{ij}$ as a matrix, since it can be expressed in terms of the geometric vectors and scalars in the problem, along with the usually isotropic tensors, delta and epsilon:
$$R_{ij}(n_i, \eta) =
n_in_j + \cos\eta\Big(
\delta_{ij} - n_in_j
\Big) +
\sin\eta\epsilon_{ijk}n_k
$$
Note that $n_i n_j$ is the projection operator onto $n_i$, and $\delta_{ij} - n_in_j$ is the rejection operator, aka "perpendicular component". The last term with Levi-Civitta symbols is a cross product.
So the rotation is not a vector, it's a rank-2 tensor, but it's not a pure rank-2 tensor (symmetric and traceless), as it has a trace (scalar part) and an antisymmetric part (which is an axial vector).
In 2D, there is no unit normal about which to rotate, which just have a number $\eta$...which may be a scalar. The $\delta_{ij}$ can be represented as an identity matrix:
$$ \delta_{ij} = \left[\begin{array}{cc}
1 & 0 \\ 0 & 1
\end{array}\right]
$$
and the Levi-Civitta (aka fully anti-symmetric) symbol is:
$$ \epsilon_{ij} = \left[\begin{array}{cc}
0 & 1 \\ -1 & 0
\end{array}\right]
$$
(Note: these are the only iso-tropic rank-2 tensors in 2 dimension).
From here, we can write the rotation operator as:
$$R_{ij}(\theta) = \cos\theta \delta_{ij} + \sin\theta\epsilon_{ij} $$
pretty easy.
What's the difference? The anti-symmetric symbol is rank-2 in 2D, so it can be inserted into the rotation operator directly.
In 3D, you need to contract it with the vector defining the rotation direction.
Edit: Now I need to was (semi)mathematical--but not with geometric algebra. Rotations are all about things we can rotate sensibly.
The easiest thing to rotate is the scalar, it's in fact, trivial:
$$ R(s) \rightarrow s$$
There is but 1 scalar in all dimensions.
The lowest non-trivial thing is a vector:
$$ R(v_i) \rightarrow R_{ij}v_j $$
In $N$ dimensions, there are $N$ of them, and we teach them as arrows, but they are better described as the 1st order waves on a surface of $N-1$. So in 2D, that's the two orthogonal vibrations on a circular ring:
$$ (\cos\theta, \sin\theta) $$
While in 3D, it's $x, y, z$, represented as:
$$\Big((Y_1^1+Y_1^{-1}), (Y_1^1-Y_1^{-1})/i, Y_1^0\Big) $$
plus normalization.
Up next is the tensors objects, which in 2D there are three(I'm guessing--actually, there are 2, ignore the middle):
$$ (\cos 2\theta, \cos \theta \sin \theta, \sin 2\phi)
$$ and in 3D, it's the five $l=2$ spherical harmonics.
The point is, when we take the tensor product of two vector representations in 3D, we get a tensor sum:
$$ {\bf 3}\times{\bf 3} = {\bf 5}_S + {\bf 3}_A + {\bf 1} $$
and our rotation operator is a combination of the objects on the right hand side, a trace free symmetric part from:
$$ {\bf 5}_S \rightarrow n_i n_j - \frac 1 2 n_k n_k $$
an antisymmetric vector-like part:
$$ {\bf 3}_A \rightarrow \sin\eta\epsilon_{ijk}n_k $$
an a scalar-like part:
$$ {\bf 1 }_S \rightarrow\cos\eta\delta_{ij}$$
Meanwhile, in 2 dimensions, we are used to:
$$ {\bf 2}\times{\bf 2} = {\bf 3}_S + {\bf 1}_A $$
when combining spinors (two spins make a triplet and a singlet). When the underlying vector space in $\mathbb{R}^2$, that triplet is made from $T_{xx}, T_{yy}, T_{xy}=T_{yx}$.
That can then have it's trace $T_{xx} + T_{yy}$ removed to get:
$$ {\bf 2}\times{\bf 2} = {\bf 2}_S + {\bf 1}_S + {\bf 1}_A $$
where we only need the latter two:
$${\bf 1}_S \rightarrow \cos\theta \delta_{ij}$$
$${\bf 1}_A \rightarrow \sin\theta \epsilon_{ij}$$
while the ${\bf 2}_S$ are related to the two shear transformation--I'm sure a mathematical physicist can wrap this up as obvious, but yeah, it's not for we experimentalists.