I'm using:
wp_localize_script( $handle, $namespace, $variables ); to declare some variables before the initial AJAX call is made, but I imagine I can't do the same thing again within a callback function? I need to declare a newly created ID for use in another function, what's the best way?

What you could do is break down your functions and let the first function call return the newly created ID as a response. Then you could take the response and use wp_localize_script() to pass the ID to the other function call located script file and then do the function call. Haven't tried this, but I think this should work.