I found a different solution that works in my case and still maintains the default fork model of uWSGI (i.e. without lazy-apps). Enabling lazy-apps may not desirable because worker processes will not share resources with their parent (e.g. read-only resources such as models used for inference).
The idea is to share only the state_dict between processes, and each worker process will do model.load_state_dict(global_state) independently, but only once, during the first request. This is opposed to doing load_state_dict in the parent process and sharing this with the worker processes.
I managed to replicate this behavior in this StackOverflow post 21.
I hope this helps others as well!