Here's a simpler idea: represent your new point $C$ in the following parametric form:
$$(1-t)\begin{pmatrix}x_1\\y_1\end{pmatrix}+t\begin{pmatrix}x_2\\y_2\end{pmatrix}$$
where $0\leq t \leq 1$, such that you have the point $\begin{pmatrix}x_1\\y_1\end{pmatrix}$ when $t=0$ and the point $\begin{pmatrix}x_2\\y_2\end{pmatrix}$ when $t=1$. Your task now is to find the value $t^\prime$ such that the length from $t=0$ to $t=t^\prime$ is $c-n$.
Luckily, the distance from $t=0$ to $t=t^\prime$ is easily derived:
$c-n=t^\prime \sqrt{(x_2-x_1)^2+(y_2-y_1)^2}$
whose derivation I leave as an exercise. Solve for the value of $t^\prime$, substitute into the parametric expression, and you have yourself the desired point.
Your formulation will work for a line drawn in a plane parallel to the x-z plane, but I'm not clear why the angle in radians for $z$ is negative, where it is positive in the formulation for $x$. With $y$ measuring height ("is held constant"), then you need to be clear about what the reference axis for your angle $\theta$.
I'd suggest the following:
Given starting point $(x, y, z)$, with $r = $ length, $\theta$ = the measure of the angle (counter-clockwise rotation) with respect to the positive $x$-axis, in radians, then your endpoint $(x', y', z')$ is given by:
$$x' = r\cos\theta + x$$
$$y' = y$$
$$z' = r\sin\theta + z\;\;$$
Using graphic below, this will:
$\theta=0$: East being aligned with positive x-axis
$\theta=\frac\pi2 = 90^\circ$: South being aligned with positive z-axis
$\theta=\pi = 180^\circ$: West being aligned with negative x-axis
$\theta=\frac{3\pi}2 = 270^\circ$: North being aligned with negative z-axis
EDIT:
Using this coordinate system, with y-height, using x' and y' as formulated above, then the line with ending point $(x', y', z')$ will lie on the plane y' = y, parallel to the x-z plane (where y = 0), and if $z' = r\sin(-\theta) + z$, as you propose, it will point in the direction of the north-east quadrant (towards the quadrant with $x > 0,\; z< 0$), with $\theta$ measured with respect to the positive x-axis. On the other hand, given $x', y'$ and using $z' = r\sin\theta + z$, as I suggest, then the line directed from $(x, y, z)$ towards $(x', y', z')$ will point to the south-east quadrant, with $\theta$ measured with respect to the positive x-axis.
Best Answer
The equation of a line trough the point $(0,y_0)$ that forms a certain angle $\alpha$ with the $OX$ axis is $y=y_0+(\tan \alpha) x.$ If you know $x$ then the end point is $(x,y_0+(\tan \alpha) x).$ (Remember to introduce the angle in degrees.)