Version independent protection for protect Simulink models is not available. You are right in mentioning that the protected model should run on the same version which was used to build it.
Although S-function/mex file is another option, I believe it offers the same level of protection and is still dependent on the platform used to build the S-function/mex file. The same is reiterated here as well.