Let me clarify.
Current import/export is built to closely reflect the data structure in the application and to maximize flexibility of the export/import. Flexibility usually introduce issue with complexity.
You can experience time out with large requests as you deal with Web server requests and web servers control time out. To solve this, you can use builtin task management tools and manage requests in smaller batches.
I agree (in general) import can be done simpler for most of the users, but we see it as a next step that can be a layer on top of existing import. Not sure when we get to do it unless it is sponsored by someone
We welcome developers to create simpler import/export extension that will be a wrapper or stand alone tool.
To answer your question.
If you are experienced, you can use SQL inserts as with any other applications that you mention. You can explore table structure and build inserts. There is nothing different here as compare to other applications. Tables structures are straight forward.
In case of categories and SQL inserts, you do need to load categories first to get IDs from the tables. This will be true in most of applications. If this is handled by simplified import in PHP, than this step can be isolated in PHP processing.
Hope this helps to clarify where we are now with import/export