Notice that to satisfy the boundary conditions, $R(r)$ must be oscillatory. This forces $\Theta(\theta)$ to have exponential behavior. Assume $\Theta'' - \lambda\Theta = 0$, where $\lambda > 0$, to see this directly. After some work we find we are forced by the boundary conditions on $R(r)$ to take $\lambda < 0$. It is a good exercise to work this out.${}^\dagger$ As joriki notes, we need not (and should not) impose the constraint that $\Theta$ be periodic.
Solve the ODE for $R(r)$ and use the boundary conditions to eliminate one of the solutions and find the eigenvalues $\lambda_n$. Use the boundary condition $\Theta(0) = 0$ to eliminate one of the angular solutions. This gives a solution of the form $u_n(r,\theta) = R_n(r)\Theta_n(\theta)$ that satisfies $u_n(1,\theta) = u_n(2,\theta) = u_n(r,0) = 0$.
The solution satisfying the final boundary condition, $u(r,\pi) = r$, will be a sum $u(r,\theta) = \sum_{n=1}^\infty a_n u_n(r,\theta).$ We need $\sum_{n=1}^\infty a_n u_n(r,\pi) = r.$ Sturm-Liouville theory tells us the eigenfunctions $R_n$ are orthogonal, $\int_1^2 \frac{dr}{r} R_m R_n \propto \delta_{mn},$ where $\delta_{mn}$ is the Kronecker delta. (Note that the weight function for the ODE for $R(r)$ is $1/r$.) To find the $a_n$s, multiply by $u_m(r,\pi)/r$ and integrate from $1$ to $2$. This is totally analogous to the process of finding the coefficients in a Fourier series. There's a nice closed form for the $a_n$.
Below we plot $r$ and the partial sum $\sum_{n=1}^{25}a_n u_n(r,\pi)$.

Figure 1. The sum $\sum_{n=1}^{25}a_n u_n(r,\pi)$.
${}^\dagger$Think of solving Laplace's equation in Cartesian coordinates. After separating variables, we can't have both $X(x)$ and $Y(y)$ oscillatory since we need $\frac{X''}{X} + \frac{Y''}{Y} = 0$.