The worst possible effect of ignoring unknown messages is a waste of downstream bandwidth. The same is already possible by being sent addr messages.
Using the protocol level requires a strict linear progression of (allowed) network protocol features, which I expect to become harder and harder to maintain.
Using otherwise ignored messages for determining optional features is elegant, simple and opens no new attack vectors. I think it's very much preferable over continued increments of the protocol version.
--
Pieter