Reproject raster image: How to choose geolocation band?

The slowness you see is probably a mixture of multiple things. The GeoCoding, the writing and probably other things (e.g. bugs in SNAP).
In general it might be better if you stay within python and don’t use the bash script to start gpt.
In the forum you find some example how to invoke operators from python.
This way you can skip the writing step.

In this post from @johngan is a pretty good example:

In general you invoke an operator by calling

target_product = GPF.createProduct('operatorName', parameter_map, input_product)

The target_product can be used again as input for the next operator.