I have read through several proofs of Bertrand's Theorem, including the one on Wikipedia. A typical proof can be found here (Santa Cruz Institute for Particle Physics). Almost all proofs using Newtonian mechanics, including the one on Wikipedia, includes a step to neglect the higher-order terms on the RHS of the equation $$ \frac{d^2 x}{d\theta}+(1-\frac{dJ}{dx}|_{x=0})x=O(x^2). $$ and subsequently, to deduce that $x=A\cos \beta t$ and that $\beta$ is rational.
I am quite a bit shocked since ignoring all terms in $O(x^2)$ is mathematically unacceptable. Of course, you can say that when $x$ is small, higher-order terms doesn't count, but such a statement is not mathematically rigorous; we must use $\epsilon$-$\delta$ language to describe that, which is very difficult.
Note: I am NOT saying the big O notation is not rigorous. I am saying that IGNORING or Negleting terms inside big O is not justified.
Can anyone suggest a more rigorous proof? Perhaps just fill the mathematical gaps for the document I linked above?
Edit: Even if the $O$ term is arbitrarily small, all we can say is that the exact solution and the approximate solution lies very close to each other. However, the author in the linked text is saying that if the approximate orbit is closed, then so is the exact orbit - this is NOT guaranteed by the fact that the approximate and exact solution lie very close to each other.