I'm searching for a way to change NavigateForFormsPages property using CSOM but no luck till now. any idea how to do it using CSOM?
Currently it's not possible. You could vote for the feature here: https://sharepoint.uservoice.com/forums/329220-sharepoint-dev-platform/suggestions/15147108-navigateforformspages-support-in-csom
If you create the list through CSOM, you could add the following to your list schema:
<List NavigateForFormsPages="FALSE" ... >