What do you mean with 47 classes, are they all resource related models (each represents a db table) or is it your controllers, or classes overall?
Note that on your routes you can use except and only:
Route::resource('my-models', 'MyModelsController', ['except' => ['delete', 'destroy']]); // this resources should not be deleted
If they are all models (and you do really need all of them) try to categorize them and use some kind of factory, repository for instantiation. Maybe you could use polymorphism too (laravel supports that out of the box).