As I am a rookie Strapi user myself I will try to help with my opinion.
I believe the short aswer and best practice to what you are asking is Yes, you need a Strapi instance for each project
Now, if you feel adventurous and if your projects are completely different you should, theoretically, create the appropriate content types for each project and then consume the corresponding data from the different API endpoints for each project. But this is only the content aspect of a project. You should consider, strapi administrators and their permissions, other features of your projects such session management, register/login of users, automated emails etc.
Is there a blocking issue for having one Strapi instance?
Cheers