> I've been taught by some pretty experienced engineers that in terms of readability, multiple return statements are a bad idea
They were wrong and probably not as experienced as they/you thought. Guard clauses make code simpler and more understandable.