Difference Equations, why M<=N for causality?
You're right, it's simply not true that $M\le N$ is necessary for causality. The difference equation in your question can always be implemented by a causal system.

However, note that the difference equation is not uniquely related to a causal system. A simple example is

$$y[n]=ay[n-1]+bx[n]\tag{1}$$

This can obviously be implemented by a causal system. But for $a\neq 0$ you can also rewrite (1) as

$$y[n-1]=\frac{1}{a}(y[n]-bx[n])\tag{2}$$

which suggests an anti-causal system, even though (1) and (2) are completely equivalent. This difference is reflected by the transfer functions ($\mathcal{Z}$-transforms) of the corresponding systems. For a causal system the region of convergence (ROC) is outside a circle enclosing all poles, whereas for an anti-causal system the ROC is inside a circle outside of which all poles are located.