Man it’s not that difficult, I do it all the time! I use 3ds max to build my level meshes, very detailed and highly tessellated and turbo smoothed. Just use the “optimize” modifier or something similar if you are using different software. Also, I usually split my big mesh into parts, this way I can have higher lighting quality inside UE4 because the highest a light map size can be is 4096.
Before everything, if you can split the mesh into parts by selecting polygons and detach them as separate objects then do this because it’s easier. This will work if you can easily define where certain parts of the mesh go. Like for example if your whole mesh has columns and walls which you can easily define and select their polygons and detach them. This way you will end up with separate meshes for columns, walls, lights, floors, whatever. Which are smaller in polygon count and easier to handle.
Now if your object is one single mesh, and it’s very difficult to select separate parts of it for columns, walls, or whatever you can split it using the vertex slice plane option (3ds max) and choose “split” option. Then you can detach each of these new mesh elements into separate objects. Make sure you do this after you optimize the mesh otherwise you will have bad results. And when you export them as FBX, make sure all these new objects which are parts of a single mesh are in a single FBX file so that when you import them in UE4 they will come in their right locations. Also, I advise you to use the option “generate light maps” in the import dialog in UE4 for the imported meshes and no need to make any unwrapping of a second channel in your 3d package. Really UE4 is now very good at doing this actually no need for unwrapping outside of UE4. Just make sure you add a UVW map to the mash after it’s optimized before you convert it to an editable poly. This is my workflow and it is giving near perfect results.
Another option for splitting, which will work if your high detailed mesh is a result of low poly model with added mesh smoothing modifiers is to select the polygons which are a part of the whole mesh before adding smoothing and which you intend to make a separate part, and then after you add a mesh smooth or a turbo smooth modifier and convert to an editable poly you can go to “polygon” sub level again of the new detailed mesh and you will find that the same portion you selected earlier is now selected but with much more polygon count. Now you can detach them as separate object and optimize and add UVW mapping and convert to Editable poly and export. Do the same to other portions and you will end with all the parts ready for export.
Hope this helps