I did a course titled something similar in my undergraduate, and while it didn't teach the following applications, H. Cohen's A Course in Computational Algebraic Number Theory (which I read right after the course, and you should too) does.

As you mention, one can use the Pollard rho algorithm to find a factor $p$ of $N$, in time $O(\sqrt p)$. There are two other basic algorithms that use CRT implicitly, both in Cohen's book:

1) Pollard's $p-1$ (and its generalizations, such as Williams' $p+1$): Compute $gcd(a^{n!}-1, N)$. If $p-1 | n!$, then the gcd will be divisible by $p$, and one can factor. This uses CRT implicitly in the following way: we can compute the $gcd(a^{n!}-1,N)$ using only mod-$N$ operations - but we find $p$ because of the existence of CRT. If we accidently get $N$ as the gcd, we can still factor using another application of CRT. Read the above referenced book for details.

2) The much faster Elliptic Curve Method: Initialize an "elliptic curve" $E$ mod $N$ and a point $P$ on it. Compute $(n!)P$. I write "elliptic curve" because we aren't really defining an elliptic curve - $\mathbb{Z}/(N)$ is not a field! But, using CRT, we treat it as the combination fields. We hope that the order of $P$ on $E/\mathbb{F}_p$ divides $n!$, and mod any other prime dividing $N$, the order does not divide $n!$. In this case $(n!)P$ will "have" $p$ in its denominator, but not the other primes, allowing us to recover $p$. This, again, is using CRT much in the same way that Pollard's Rho does. We compute things only mod $N$ - but we get things that are structurely inherit, such as $p$.

3) A bit of a different kind of computational application of CRT is D. J. Bernstein's "Doubly focused enumeration of locally square polynomial values." (Pages 69--76 in High primes and misdemeanours: lectures in honour of the 60th birthday of Hugh Cowie Williams, edited by Alf van der Poorten, Andreas Stein. Fields Institute Communications 41, American Mathematical Society, 2004. ISBN 0-8218-3353-7).

The author uses CRT explicitly in order to enumerate over numbers satisfying certain congruence properties. It is not cryptographic, but computationally interesting and simple to understand, not to mention record braking.