Is this the right way to embed customized lists and other components that are interacting with CDS?
Model driven app Navingation and command bars can be hidden using the navbar and cmdbar url paramers. See sample here
You need to have the entity grid for which you are building the custom react customization as landing page which would result in visually showing only your component witout any model app shell like image below. You need to manage navigations from your custom PCF now as needed using APIs for navigation or open record item from grid.
Is there anywhere a guide on how to embed a react solution in the correct way?
React PCF controls can replace form feilds , grids , sub grids and associated grids at entity or record level. You can add these at entity and view level. Also CDS data set options in the control manifest can control what PCF can show - cds-data-set-options="displayCommandBar:true;displayViewSelector:true;displayQuickFindSearch:true"
Do I have to declare it as a grid or subgrid in the manifest?
If you are planning to take over the whole page , yes declaring it as a data set type controls and configuring it to landing page entity will do the trick. Note that this being PCF you have access to CDS data and also you can use setControlState API to locally cache stuff for faster reload.