I have tried to do some of that with a Slack bot project I'm working on, called Huxley: https://www.meethuxley.com/
Basically, it used guided questions to get you to give structure to your meetings. I will add some of your suggestions, they sound very good.
I should also get around to releasing it one of these days...