Alfresco has very limited support for model changes.
Any change you do should be compatible with all previous model versions since Alfresco doesn't have a concept of model versioning and all nodes (even the read only version2Store nodes) must validate against the latest model.xml. So you should be very, very careful when adding or modifying a property in your model since this may cause trouble months later when you don't expect it.
Removing properties is possible in therory but if you also want to delete the properties in the database (which are not removed automatically) you shold be very careful not to brake your whole system. If you do anything wrong, no support may assist you.
In most cases you need to recreate the solr index after modifying the model and/or db.
On the other hand: Why should alfresco occupy 'many space' in table alf_node_properties? Only one column contains a value and if a sting value is empty, your db shouldn't consume reasonable data since varchars only consume storage for characters stored.