In the very short term, the advimport extension might help: it adds a button to the core contact import to "process with advimport", and it uses its queue for processing. A bit slower, but it won't crash.
In the long term, this is something that a few folks such as Eileen and Tim have been working on improving in core, so hopefully somewhere around CiviCRM 5.51 or 5.52, core import should be much more efficient (PR#23669, for example). There are a few open PRs waiting review, if you are interested to help speed things up.