I want to use SharePoint to manage projects. Logically this means creating a project site per project, but I also need to display all of the tasks from the individual projects on the home page of the main site. I want to be able to define a view in the project task list and use that view on the main site.
Your approach is to have one subsiste per project that it's a good approximation but think of creating Office 365 Groups instead of regular SharePoint sites. You will be able to use all the features of those kind of sites like unique distribution list for all members.
Anyway, I think Highlight webpart can show items of a specific content type and task could be supported. Otherwise, you can create a new content type and use it in the Higlight webpart as a filter. As well as the subsiste and config as many webparts as projects you have created as subsites.
One more thing about this webpart is that it can show items from other site collections so you're architecture can be different if having lot of subsites and create a new site collection per project. I don't know if there is another webpart in modern experience to get this functionality or something similar but I don't think so.
The message from MS is pretty clear: no subsites going forward. In this case one option could be that each project is a Group, and related projects connected to a hub site. As for aggregating the tasks I would use search, either in the hub or one the project overview portal. MS has not provided any modern search web parts yet but the PnP Search web parts covers that nicely