Hi Mike,
There's a few ways you could do this I can think of.
1. Autoscale groups provide 'rolled up' metrics for the instances attached to them. For example, you could get average CPU across all instances in the ASG. Alternatively, you can get a metric per-AZ for all instances in the ASG (e.g. average CPU of instances on that ASG in ap-southeast-2a or ap-southeast-2b). So as long as you were happy to set an alarm on a group of instances, it might work. e.g. if you just want to check for CPUCredit dropping too low, your alarm could be in 'Min' which would be the lowest of all the instances.
2. If the launched instance had an instance profile attached, the instance could create the alarm itself on boot. You'd need to put it into the userdata and call the CLI commands, for example.
3. You could configure the ASG to send a launch notification to an outside component (e.g. lambda function) that would then create the alarm.
Hope that helps.
Phil