@Thalios yeah I was barking up the wrong tree there... glad you got it sorted.
I actually suffer from a very similar thing (I have a Piezo so like to probe at 130deg so I don't damage the bed). One thing you could try is if your slicer allows you to use built-in placeholders (not sure what the technical term for it is...) in the start Gcode. In IdeaMaker, I have to have:
M104 T0 S130 ; start heating the extruder to 130deg but don't wait
M190 S{temperature_heatbed} ; set heatbed temp and wait
G28 ; home all axes
M109 S{temperature_extruder1}; Set extruder temp and wait
I think some slicers put the heating commands in after the start code rather than before. I usually use PrusaSlicer which does this so don't have to worry about the heating issues. It confused me what I firsttried using IdeaMaker...
You could also set your tool to 'standby mode' and set the standy temperature, then revert back to active? I think that would wait til it hit temperature. Or do the M116 you suggested (if it still thinks it is meant to be set to the print temperature)