$\DeclareMathOperator\PSL{PSL}\DeclareMathOperator\PGL{PGL}$We can use geometry of algebraic curves to get this bound. As mentioned in the other answer, we reduce to showing that $\PSL_2(\mathbb{F}_p)$ does not have a subgroup of index $p$. If it did, the order of that group would be $\tfrac{(p+1)(p-1)}{2}$. We then show the following:

<b>Lemma</b> Let $k$ be a field of characteristic $p$ (possibly $0$) and let $G$ be a finite subgroup of $\PGL_2(\mathbb{F}_p)$ with $\lvert G\rvert \not\equiv 0 \bmod p$. Then either
(1) $\lvert G\rvert \leq 60$ or
(2) $G$ is contained in the normalizer of a torus (which may or may not be split).

<b>Proof</b> Without loss of generality, we pass to the algebraic closure of $k$; this isn't essential, but it makes the algebraic geometry language simpler. The group $G$ acts on $\mathbb{P}^1$, and thus $\mathbb{P}^1/G$ is an algebraic curve, which is isomorphic to $\mathbb{P}^1$. Thus, we get a $G$-covering $\mathbb{P}^1 \to \mathbb{P}^1$. 

Since $\lvert G\rvert $ is not $0 \bmod p$, this is a separable map; let it be ramified over $x_1, x_2, \dotsc, x_r$ with ramification of order $e_i$ over $x_i$.
Since $p$ does not divide $\lvert G\rvert$, we can apply the Riemann–Hurwitz formula and compute
$$2 \lvert G\rvert = 2 + \sum_i \tfrac{\lvert G\rvert}{e_i} (e_i-1)$$
or, in other words,
$$\lvert G\rvert = \frac{2}{2 - \sum_{i=1}^r (1-e_i^{-1})}.$$
Since $2 \leq \lvert G\rvert < \infty$, we see that $1 \leq \sum_{i=1}^r (1-e_i^{-1}) < 2$.
If $r \geq 4$, this is impossible, since each summand is at least $1/2$. Having $r = 1$ is also impossible, as then $\sum_{i=1}^r (1-e_i^{-1})<1$. So we get down to $r=2$ or $r=3$. In the case $r=3$, at least one of the $e_i$ must be $2$, or else we would have $\sum_{i=1}^r (1-e_i^{-1}) \geq 2$. If exactly one of the $e_i$ is $2$ then the closest we can get to $2$ without going over is $\sum_{i=1}^r (1-e_i^{-1}) = 1/2+2/3+4/5 = 59/30$, which gives $\lvert G\rvert = 60$. So we have now reduced to the case of either $r=2$ or of $r=3$ and $e_1=e_2=2$.

I think there is should be a more elementary way to say this next part, but the prime-to-$p$ fundamental group of $\mathbb{P}^1 \setminus \{ \text{$r$ points}\}$ is the profinite completion of $\langle g_1, g_2, \dotsc, g_r \rangle / (g_1 g_2 \dotsm g_r)$, where the element $g_i$ will act with order $e_i$ in a cover ramified of order $e_i$ over the $i$-th point. In particular, $G$ will be generated by $\{ g_1, g_2, \ldots, g_{r-1} \}$.

Now, if $r=2$, then $G$ is generated by $g_1$. So $G$ is cyclic, and of order prime to $p$, so $G$ is contained in a torus.

If $r=3$ and $e_1 = e_2 = 2$, then $G$ is generated by $g_1$ and $g_2$, each of which have order $2$, so $G$ is dihedral. Thus, $G$ has an index two cyclic subgroup $C$ of order prime to $p$, so $C$ is contained in a torus $T$, and $G$ is contained in $N(T)$. $\square$.

Now, if $\lvert G\rvert \leq 60$, then $\tfrac{p^2-1}{2} \leq 60$ and $p \leq 11$. If $G$ is contained in the normalizer of a torus (and now using that $G$ is in $\PSL_2$, not just $\PGL_2$), then $\lvert G\rvert$ divides either $p-1$ (in the case of a split torus) or $\tfrac{p+1}{2}$ (in the case of a nonsplit torus). Either way, this is incompatible with $\lvert G\rvert = \tfrac{p^2-1}{2}$ for $p>2$.