Just to tune in on the whole Unity vs. Unreal thing.
If you don't intend to compete in the highest of ends, don't worry too much about the power of Unity. It can do pretty much everything Unreal can, given you have the expertise or the money to upgrade some of the stock systems.
As an example, the stock terrain engine in Unity is seriously dated. You still can create a goodlooking game with it with a capable artist, but you will certainly hit certain ceilings without modifications... BUT: there are already a ton of VERY capable third party assets in the store to upgrade the Terrain System. Using a thirdparty terrain shader (for example RTP), and a thirdparty grass and tree system (for example Infinigrass), you get already a terrain system that you would have to struggle quite a bit with the Unreal Material node system to get a comparable result.
Now, This will cost you some 100$'s of dollars for all the improved systems you need, and you probably loose some % of performance because these systems are not built into the engine core, whereas the Unreal stock systems are (but of course messing around with the Unreal Terrain shaders leaves room to mess up performance again). You COULD develop your own systems in Unity just fine given time and skill, but I guess this is not what you want to waste your time on. The Performance thingy is really up to question... will it affect your game? Do you REALLY plan to push the hardware with your game? Should it be the next Witcher? I doubt it. Even if you ramp up your team, can you realistically expect to hire the 20+ team members needed even for small scale AAA effort? Or will your rather just hire a single artist, and maybe a programmer, and have to make do with much simpler graphics which will not push the engine just as hard?
Don't get me wrong, Unreal 4 is a really fine engine, just as is Unity since they bounced back from their rough start in the Unity 5 release cycle. If you make the switch, and get along with the "Unreal way of doing things" (which is very Blueprint centric, and C++ centric at all unless you happen to have a lot of Unreal C++ expierience already), you will be just as happy using Unreal as you most probably are using Unity.
Just don't make the switch expecting Unreal to be the magical silver bullet that does everything for you, and more. Its not. You get better stock systems, and POTENTIALLY more power at the highest of ends when pushing the limits on graphics and stuff like terrain streaming. You pay for it with a very strict way of doing things, having to rely on Blueprint a lot, having a less intuitive and more cluttered editor than in Unity. And having less options in many areas (they didn't have a forward renderer option when I last checked, though epic was working on it). And if developing for mobiles or some of the more exotic platforms, Unity usually has you covered with build targets, and usually is more often used on these platforms than Unreal.
So really, you will most probably not gain MUCH, unless you are currently developing on a shoestring budget and are not ready to pay for assets in the Unity asset store that could upgrade some of the more dated aspects of Unity, AND are really hitting the ceiling of what the Unity stock systems can do. The Unreal stock systems will usually let you do way more, for free.
Another thing to keep in Mind, IF you would switch mostly for futureproofing, is the pricing models. Unitys is basically a fixed cost as soon as you hit a certain income threshold with your game, per seat (sadly now you have to pay a sub, but Unity still gives you the option to end the sub and keep the license after a certain sum has been paid). Unreals on the other hand is a 5% royality you pay after you hit a certain income threshold. You can get around this AFAIK by buying a commercial license at some point, though how expensive these are nowadays IDK. Most probably still targeted more towards big AAA studios, thus 100k$+.
But really, just download Unreal 4 and give it a test run. Its free! It only costs you some time to get into it, but IMO that is time well invested... for one you will learn more about how engines work in general, and you will now make a better decision on which engine to use for which project, and why.
I did it, and came back to Unity after 6 months. Unreal 4 just isn't for me. I can get the same Power from Unity with the help of some upgraded systems from the asset store, and I am positive that I can work around some of the performance lost because of the engine or the less integrated systems with some optimization at the end. I work way faster with Unitys way of doing things whereas in Unreal everything felt like a struggle to me.
Never underestimate the ergonomical aspect of different engine editors. If you can work much faster in the editor of an engine, that can outweight an engines lack in power in many cases. Especially when you know you will have no use for that additional power for your project.
In the end I came back to Unity with a new appreciation for the Engine, which I still think has many weaknesses. But it has its strengths where it matters for me, and I think I work faster in it than in any other engine. And this is what matters most to me, not some theoretical future proofing that might never be necessary.
Might be the total opposite for you. Maybe Unreal Engine 4 just clicks for you, and you find out you work faster in it than Unity. In this case, you will be happy you have made the switch now, and not waited for another 6 months.
But maybe you also find Unreal to be not to your taste. In which case the theoretical upgrade in power and stock system quality might not matter anymore, and you will come back to Unity with a renewed sense that this is the right engine for you.
In either case, investing some months into learning Unreal will be a very good investement of time, even if your game makes no progress during this time, and you have to learn many things from scatch again for Unreal. Your knowledge will grow anyway.