You said no to zonelets, so I’m not sure how you’d feel about it, but I’ve had good luck with 11ty (
https://www.11ty.dev/), which is a static site generator. It can be a lot to begin with if you've never used a static site generator before, but it’s incredibly well-documented (
https://www.11ty.dev/docs/get-started/), and it has a lot of projects you can duplicate and play around with instead of having to start from scratch (
https://www.11ty.dev/docs/starter/). This starter blog might be a good candidate for you
https://github.com/11ty/eleventy-base-blog). You can follow the instructions in the readme on GitHub, or you could start with one that’s already up and running on Glitch (
https://glitch.com/edit/#!/denim-knowing-tax), so you can get in there and just start poking around.
Basically the blog posts themselves are written in markdown, and 11ty uses a templating language to pass your content into the right places of your layout. This way, when you decide you want to change your layout, you only have to make the change in one place. So in your project, you’ll have files that end in .md, and what 11ty does is take those files and spit out regular old .html and .css files that are stored in a new /pub directory. So to get your site onto Neocities, you’d just upload those /pub files.
11ty was how I managed my reading log (
https://pagemelt.neocities.org/projects/booklog/) for a while, before I realized that an individual .md file for each and every book was way more than I needed.