Why can't realisable IIR filters have linear phase?
The frequency response of a real-valued discrete-time system with linear phase has the form

$$H(e^{j\omega})=A(\omega)e^{-j\omega\tau},\qquad\omega\in [-\pi,\pi]\tag{1}$$

where $A(\omega)$ is either a real-valued even function or a purely imaginary odd function, and $\tau$ is some real-valued parameter (the delay). If $A(\omega)$ is purely imaginary, then there is a phase jump of $\pi$ at $\omega=0$, but otherwise the phase is linear. This latter type of phase is usually referred to as "generalized linear phase", and it is the type of phase exhibited by filters with odd symmetry in the time domain.

The impulse response of the corresponding system is given by

$$h[n]=(a\star d)[n]\tag{2}$$

where $a[n]$ is the inverse discrete-time Fourier transform (IDTFT) of $A(\omega)$, $d[n]$ is the IDTFT of $e^{-j\omega\tau}$, and $\star$ denotes convolution.

The sequence $a[n]$ is either symmetrical or anti-symmetrical due to the properties of $A(\omega)$ (real or purely imaginary), and hence non-causal. The sequence $d[n]$ is given by

$$d[n]=\frac{\sin[\pi(n-\tau)]}{\pi(n-\tau)}\tag{3}$$

which simplifies to $\delta[n-\tau]$ if $\tau$ is an integer.

Consequently, if $a[n]$ has infinite length (as is the case for IIR filters), $h[n]$ cannot be causal and have linear phase at the same time. Only if $a[n]$ has finite length (thus FIR) can it be made causal by shifting to the right. That's why FIR filters can have linear phase whereas causal IIR filters cannot.