I'm also learning the ropes but here's how I figured so far.
Blender for modelling mesh, UV mapping, Sculpting
Substance Painter for Texturing, Map baking
Here's my workflow:
(!)At this point we have nothing.
1. Model mesh in detail(either subsurf or multires parts)
2. Sculpt details on multires parts(for organics generally)
(!)At this point we have high poly version of your mesh that cannot be used in a game.
3. Make low poly version of your High Poly mesh(Either by hand, by program or by shrinkwrap), this is called retopologizing which is your worst nightmare.
3.1. Go UV editing mode on LOW POLY mesh and Unwrap your model by seaming, you remember your worst nightmare? This is worster.
(!)At this point we have low poly version that can be put into a game but no textures. If your game isn't about grey people doing stuff in a grey world keep on reading.
4. Export your HIGH POLY mesh as fbx to folder WITH _high as suffix, mymesh_high.fbx
5. Export your LOW POLY mesh as fbx to folder WITH _low as suffix, mymesh_low.fbx
6. Open Substance Painter and make a new project with your LOW POLY fbx selected
7. Go to Bake Textures setting and select your HIGH POLY mesh(look up a youtube videos for the settings or just experiment)
8. Wait forever till textures bake
8.1. Use a smart material on ALL your materials to see bad parts.
8.2. Well, you see those warped and bad looking places on your textures? Go back to (STEP 3.1.) and seam better, you remember your worster nightmare? Welcome to an endlessly looping worster nightmare. Move on if you give up on correcting it and work with what's at hand.
(!At this point we start texturing)
9. Fail at making cool textures like you see online and make whatever you are able to.
10. Export your textures to a folder while trying not to be ashamed of your work.
IMPORTANT NOTE: You have to select your PLATFORM, I choose Unity you choose Unreal. Look up documentation for up-to-date selection.
(! At this point we have the textures and the mesh)
I don't know Unreal so I'll give the basis of what I do in Unity. I assume they're similar since it's basic work.
11. Open Unity, load project or make new.
12. Import your LOW POLY mesh into project.
13. Import your textures(albedo, metallic, normal in Unity), Substance should be creating the correct ones if you selected the PLATFORM correctly.
14. Apply your textures to material of your mesh.
15. End, you should be having your mesh and textured it in your platform.
16. Keep your chin up and try not to cry because of how horrid it looks.
These were my experiences, here's the answers to your questions.
Workflow seems correct
Use fbx from Blender
Here are the same textures exported by selecting Unreal and Unity. The naming and coloring seems to me are the only differences.
Oh, and if you don't want to work with cool looking game assets and instead make low poly trash use the workflow below:
1. Open blender make a box, do Smart UVing.
2. Select vertices and assign your colored materials on them, texturing DONE! Oh, you want to use Substance? Okay. Export to fbx.
2. Fire up Substance, load your mesh, bake to nothing, throw on fill layers, DONE.
3. Export textures, load everything into engine.
4. Make millions of dollars by making boxes float in mid-air.
5. Throw the money towards the sky while laughing at people who spent days on beautifully hand-painted or sculpt baked textures.