Hi GlumReaper,
Welcome to our community!
If you feel that Unity was not the best choice for your game, my personal advice would be to test a different game engine (e. g. GameMaker) to figure out if that one is better for your game.
Unity is fairly universal, which is great if you need “everything”. However, if you have specific problems, other game engines specialising in those specific problems might be better.
For example, I would not create a simple text-based adventure game in Unity because Twine is much better and much more performant. I would also rather opt for the RPG Maker 2000 (or whatever the latest version is) if I wanted to create a traditional “SNES” 2D RPG game unless I could not realise my ideas with that engine.
Regarding your questions on 2D games in general, I would suggest to look for similar games you want to create. Then try to figure out which game engine the creators used. For example, “Ori and the Blind Forest” was created with Unity. While Unity is indeed a 3D game engine, it also handles the 2D space well, so my advice would be to not drop Unity just because you could create 3D games with it.
Efficiency depends on multiple factors. Your time is one of them.
Do what you feel is and works best for your project(s).
See also: