Use create_before_destroy parameter:

resource "aws_launch_configuration" "example" {
  image_id        = var.ami
  instance_type   = var.instance_type
 
  ...
 
  lifecycle {
    create_before_destroy = true
  }
}

As I understand, at least in some cases when this parameter is set to true, instead of updating some resource in place, it will “force replacement” of it.

Has some limitations, for example with an ASG (Auto Scaling Groups) some values may reset that was updated with policies (e.g. number of servers that was bumped during the night, that will be reset on new deployment of an ASG). But I don’t really work with that at the moment.