Developers spend time for macOS version and they should have the right to ensure such effort is respected, and the correct version is delivered to the user because macOS app does not take less time to develop, but reaches much smaller amount of audiences than iOS apps. By the way, your last statement sounds like "Sorry, I know you made a Mac version but I still prefer the iOS version because I don't trust you." This might be a valid statement if the app is required and you don't have an alternative, but this is not for most apps that can be replaced.
What's more, a lot of apps don't share license between iOS and macOS, and users are required to purchase for both platforms in this case. Different developers/company may have different strategies, but force M1 users to buy the Mac version to secure revenue is one of them. I'm sorry.
Maybe for hardware capability yes, but software framework no. Even Apple have no idea how many frameworks are going to work because not all frameworks are written by Apple, it can never be blocked at store level.
So developers cannot have a private data container which is not user accessible? Or if they want, they have to rewrite how data is stored for a platform they don't want to support? If I have to rewrite, I'd rather port using Mac Catalyst and release it as a standalone Mac version, this way users will get better experience and I will get paid more.
It is. However, even if you 100% followed Apple's guideline, your app will still break in the future if you don't update frequently enough to catch Apple's pace. Each and every WWDC will break so many apps, and some hard-coded cases are actually implemented to workaround Apple's bugs because they never ship a perfect iOS release. One of the biggest "feature" of Apple platforms is "absolutely 0 backward compatibility." If you write an app for Windows, it will have a very high chance still runnable in a 10 years later Windows version without changing your code, but this will never happen on macOS/iOS. So the solution is not "better programming", but "following Apple and drop legacy", and hard-coded cases are inevitable in this process.