I would advise against mixing nozzle - you would have many jams and clogs and you would have to use purge tower which in my opinion is not worth it. Thats scratching point 2.
Point 1. and 3. are similar to some extent. With both types you have to align the nozzles in all three axes. Crude aligning should be done by hardware and fine tuning done in software (too much difference in Z alignment could cause one nozzle hitting the printed part). Anyway, the aligning is pain and you will have to do many test prints to achieve sufficient results.
In my opinion, point 3. (also called Idex - independent dual extrusion, I believe) will give you best results, because while one nozzle is printing, the other one is parked on the side where it can ooze as along as you manage to wipe it when it is getting ready to print. You can use purge buckets. Also you have to home the extruders indepentently as well (one to right and one to left).
Point 1. will introduce a lot off oozing issues. You would have to use ooze shield, or other methods of wiping the other hotend, if you are comfortable with that.
As for connecting another axis to Ramps 1.4, the board has 5 stepper motor outputs (X, Y, Z, E0 and E1). Therefore there is no output for another X axis, since both E0 and E1 will be used. You have two options I can think of:
Creating your own stepper output and connecting it to auxiliary pins on the board (if you are using legacy stepper drivers, you need 2-3 pins - direction, step, (and motor enable)). That requires some basic knowledge of electrical devices and firmware. However, it is doable. Not easy for someone without sufficient knowledge, but not impossible either.
Or the other option is to buy an existing boar with 6 stepper motor outputs such as Bigtreetech SKR PRO. You still have to configure the firmware but it is much easier this time (it has been made/pre-made several times with tutorials).
I would suggest using Marlin firmware as it supports many configuration types and has very strong community - someone has likely solved your solution or can help you solve yours.
I would also suggest not using Ramps board with Arduino Mega2560. That board configuration is so old. 3D printers have moved on, whereas that board has stayed the same for 5 or so years. It is OK, perhaps good for tinkering, but there are far better options (such as the mentioned BTT SKR series boards).
Good luck with your design.
Note: I do not own a dual extrusion printer of any of the mentioned types. This is just my understanding of the theory and how I would do it, if I were to build a dual extrusion 3D printer.