SQL Server recovery model cannot be changed I need your advice. Is there any way to prevent any user from changing the recovery model? It should throw an error when the user tries to change recovery model of SQL server.
To change the recovery model requires the ALTER permissions on the database. You can revoke or deny that permission to a user and it will prevent them from altering the recovery model.
Note that denying permissions overwrites any grants, ensure you test any permissions changes before applying to a production server!

Required permissions
Requires ALTER permission on the database.

Ref: https://msdn.microsoft.com/en-au/library/ms189272(v=sql.120).aspx