If I had to do something like a one-page theme, my approach would be certainly with CPTs.
I would create a Section Post type meant specially for the homepage, and maybe add some custom fields to control their layout. For instance, a color field to change the background and a dropdown that lets you choose how the text is positioned. Things like the Featured Image and title could be used for quick, zig-zag style sections.
As for the menu… That’s where it gets tricky. As @TiborP mentioned before, some themes in Themeforest have some sort of weird mechanic to create menus, and at some point I also had to assist someone in setting up one of these. It was pretty convoluted.
I think I would either leave the menus as is, and direct users to add an internal link (such as #section), or hack the menu Walker to add a custom field with a list of all the existing sections. Alternatively, it could be possible to simply append the section links to the main menu.
Just my two cents