Is it better practice to create many page templates, or a a few base templates with custom HTML added via TinyMCE?

I use multiple templates, but also use code for some pages. For example, if I have a site with 3 sections, About, Products, and Research I would create page-about.php, page-products.php and page-research.php. These can be customized as necessary though usually they are simply pulling in unique sidebars which I want to include on all pages within that section. I wouldn’t use a unique template for each page, but would create templates that can be used by multiple pages that have similar needs.

The home page of the site is a different story. If I code everything into index.php, then the content can only be modified by editing the template. So I might build some things into the template but also add HTML in the editor. This could include multiple divs and various features. If you use the Tiny MCE Advanced plug-in you can set it so the extra paragraphs and breaks can be seen and removed. Or you can use https://wordpress.org/plugins/wpautop-control/ to turn off autotop for the page. This will keep WP from botching up your code.