So I have made a game coded in C++ (using SFML as a library) and a custom JSON C++ library. Is there anyway I can port this to Unity so I could use its UI features as well as its compilation ( I want to build the game for phones ). I have read about Native Plugins but I am not sure if it will work.
I'm not sure it's possible to completely port a c++ game to unity. Your game uses sfml for drawing things on the screen, sfml uses opengl(or its way to draw things).
Unity has a much more complex architecture: it uses shader files, scripts, scenes and so on; This does not mean that the same concepts and mechanics can be applied to a game in Unity: most of the things are going to be much easier to do and less error prone.
In my opinion the solution (IF you want to use Unity) is to completely switch to unity, for both the android and desktop platforms.
IF you want to stick to C++ and sfml, there are ways to build your game for android