For any two of your three equations and two of your three variables
eq1 = M^2 + L^2 - 2 M L Cos[i] == a
eq2 = M^2 + X^2 - 2 M X Cos[cr] == b
eq3 = L^2 + X^2 - 2 L X Cos[i - cr] == c
Reduce[{eq2, eq3}, {L, M}]
it almost instantly returns a solution in terms of the remaining variables.
Is there any chance that you might more quickly be able to take the result of two of the two variable solutions and equate those find the overall solution and then verify your condition that the result be Real?