Great question, this is how I typically solve this scenario.
1. Ensure development is separated from Governed Self Service, I see the scenario you're describing as separate to governed self service, the users are not using pre-created models, instead they are creating new models (potentially with some mistakes). These users can be provided with a sandpit server, any development performed on this sandpit is effectively ungoverned. In order to ensure users are not impacted by development activities I prefer to isolate development activities to different engines.
Qlik Sense Enterprise has a number of configuration options allowing for queries of certain sizes to be restricted, however this is an engine wide config and not available per user.