How do I revise a live Alexa skill?

Alexa Skill

As you said when your skill is published you will have a live version and development version. Both the live version and the development version of your skill are shown on the developer console.

You can now make changes to the development version of the skill like: change in interaction model, endpoint change etc. Any change in the developer portal requires your skill to go through certification process.

When you submit your new version for certification, both versions remain in your list until the new version is certified. Once the new version is certified, it becomes live and replaces the previous live version. All the existing users will have the live/latest version of your skill. A new development version is then created so that you can continue making updates.

Lambda Function

When you create a Lambda function for the first time, the default version is Latest. The Latest is your development version, and you can make changes to this. During development you will use the arn of the Latest version (development version) of Lambda function in Alexa portal. Once you are done with the changes and updates of your Lambda function and you feel that this has to be released, you version it. When you publish a version (you can provide the version name) of the Lambda function, you will have two versions Latest and released-version. You will no longer be able to make changes to released-version of your Lambda. And you can continue making updates to the Latest version and release it as you wish.

It's always a good practice to publish a version of Lambda and use it in Alexa developer portal before you submit the skill for certification.

This way you can link the versioned uneditable Lambda to your live skill. And for the development version of the skill, you can use the Latest version of the same Lambda function to continue making updates.

More on versioning Lambda functions here.