OK, sorry for the delay: yesterday was hectic and then I got distracted by another question. Here is a small piece of theory promised.
First, let us notice that $\|L-SR\|_F=\|LR^*-S\|_F$ so, as you correctly noticed yourself, $S$ must be the diagonal of $LR^*$ or you can improve and also our task can be restated as maximizing the sum of squares of the diagonal entries of $LR^*$ (because the full sum of squares does not depend on $R$). Also, since we can throw the minus sign on any entries of $S$ and the corresponding row of $R$ any time without changing anything, we are free to use the full orthogonal group for $R$ instead of $SO_n(\mathbb R)$ initially requested. In this case the Proctustes step just maximizes $\rm{Tr}[L(SR)^*]=\rm{Tr}[(SL)R*]$ and results in the symmetric positive definite $T=SLR^*$ (by using one SVD). When your algorithm reaches the limit, it should have $\rm{diag T}\approx S$ (with required precision) or you can improve $S$ and the functional further by a noticeable amount.
What we will show now that if $\rm{diag T}=S$, indeed, then the sum of squares of $LR^*$ cannot be raised any further. To this end, notice that the condition that $T=SLR^*$ is symmetric positive definite and $\rm{diag(T)}=S$ can be restated as $LR^*=AS$ where $A$ is a symmetric positive definite matrix with all $1$s on the diagonal. Morally, $A=S^{-1}TS^{-1}$ though $S$ may have zeroes, in which case the corresponding row of $T$ is identically $0$ and so, by symmetry, is the corresponding column, so that block of zeroes can be treated separately as $I\cdot 0$ and in the remaining block the division is legitimate. Our aim is to show that for every orthigonal $U$, the sum $\sum_i (ASU)_{ii}^2\le \sum_i S_{ii}^2$.
Write $A=\sum_k x^{(k)}\otimes x^{(k)}$ with $x^{(k)}=[x^{(k)}_1,\dots,x^{(k)}_n]$. All $1$'s on the diagonal of $A$ mean that
$$
\sum_k (x^{(k)}_i)^2=1\tag{$*$}
$$
for all $i$. If $u_i$ are the columns of $u$, then
$$
(ASU)_{ii}^2=\left[\sum_k x^{(k)}_i (x^{(k)}Su_i)\right]^2
\\
\le \left[\sum_k (x^{(k)}_i)^2\right]\left[\sum_k (x^{(k)}Su_i)^2\right]=\sum_k (x^{(k)}Su_i)^2
$$
by Cauchy-Schwarz. Summing over $i$ and using that $u_i$ form an orthonormal basis, wi get
$$
\sum_i (ASU)_{ii}^2\le \sum_k\|x^{(k)}S\|^2=\sum_i S_{ii}^2
$$
as required (here we used $(*)$ once again).
Thus, our task can be reduced to finding a decomposition
$$
L=ASR
$$
where $A$ is positive definite with ones on the diagonal, $S$ is diagonal (say, with non-negative entries, because we can throw all minuses on $R$), and $R$ is orthogonal.
It is not immediately clear to me how to approach it using SVD or some other standard machinery, but one may notice that if such a decomposition holds (and we just showed that your algorithm yields one in the limit, though we haven't discussed the convergence speed yet; I still have to think here), then
$$
AS^2A=LL^*\Longleftrightarrow SAS=\sqrt{SLL^*S}
$$
in the sense of positive definite matrices. Since we don't care too much about the off-diagonal entries of $A$ but the correct $S$ leads to the full solution in one Procrustes step, we can just as well rewrite it as
$$
S=\sqrt{\rm{diag}\sqrt{SLL^*S}}
$$
which is exactly the problem that was posted on MO a few years ago with the question whether we can just use Picard iteration method with the initial guess $S_0=\sqrt{\rm{diag}LL^*}$ to solve it fairly efficiently (the $\sqrt{}$ on positive definite matrices is also one SVD, and you use it for Procrustes anyway, so a single iteration takes the same time here but the convergence speed may be much faster). The answer is still unknown but it is, probably, time to revisit that old question (I don't remember the link now but I'll add it in the comments when I find it). Still, as I said, you may run your theoretically guaranteed method in parallel with this unproved one and have the best of the two worlds (like it is normally done with sure but slow bisection and fast but unreliable Newton for finding a root on an interval).
I hope to be able to say more later but this should give you some food for both thinking and experimenting for a while now. Apologies for the delay again :-)