To rephrase your question: you have two unit length vectors $\hat v$ and $\hat v_2$ and an angle $\theta$ and you want a rotation by an angle of $\theta$ which fixes the plane spanned by $\hat v$ and $\hat v_2$ and with the angle oriented from $\hat v$ towards $\hat v_2$.
The plane spanned by $\hat v$ and $\hat v_2$ is perpendicular to the cross product of these two vectors. The cross product of that normal vector and $\hat v$ will result in a vector which lies not only in the plane but is also perpendicular to $\hat v$. You can use these two to establish a local coordinate system.
\begin{align*} v_3 &= \hat v\times\hat v_2 \\\ v_4 &= \hat v\times\hat v_3 \\\ \hat v_4 &= \frac{v_4}{\lVert v_4\rVert} \\\ \hat v_5 &= \cos\theta\,\hat v\pm\sin\theta\,\hat v_4 \end{align*}
Figuring out the correct sign is prone to errors, but you can simply plug in one example (e.g. $\hat v=(1,0,0)^T,\hat v_2=(0,1,0)^T$) and you will see that the negative sign is the correct one.