Setting up Interfaces and inviting your users to the Interface instead of the Base would solve the data integrity, permission control, and performance side of things: https://www.airtable.com/guides/collaborate/getting-started-with-interface-designer
Interfaces can be set up to display specific fields only, and you can also set which of those fields are editable. Record level data can be filtered down to only display records that are linked to the logged in user as well
This does mean that your users won’t be able to set up automations though I’m afraid