I somewhat agree that early exits using named blocks has a place. However there is very often benefit in terms of understanding the intent of code from wrapping "complicated" stuff up in a sub. The immediate benefit is that you can understand the surrounding code providing a context for a chunk of named work. If the name is good understanding both the calling context and the called code should be easier and you don't have to understand everything at the same time.
So, a small part of my reply is "don't use goto", but most of it is "refactor into simple digestible chunks".
Optimising for fewest key strokes only makes sense transmitting to Pluto or beyond