It sounds to me like you are misunderstanding the purpose of the TX Enable pin and you are trying to come up with some convoluted method to do exactly what TX Enable actually does.
Under normal circumstances, in RS485, the UART's RX pin is connected to the bus. When TX Enable is asserted the RX pin is disconnected and the TX pin is connected, thus allowing any node on the bus to be a transmitter and all the other nodes a receiver.
The main thing to watch out for though is that only one node is ever a transmitter at a time, otherwise you get a collision which means that the data is completely garbled.
The simplest way of stopping that happening is to have one node nominated as the master and all the other nodes as slaves. The master first initiates communication by making a request to a slave. The slave will then respond with data (it becomes the transmitter and the master a receiver) to send data to the master. That way the only node that is a transmitter is either the master making the request, or the slave that is responding to a request.
If you want "random" peer-to-peer communication where any node could become a transmitter at any time it becomes a whole lot more complex. There are things you should implement to try to avoid, or deal with, collisions, including monitoring the bus and only transmitting after a certain amount of idle time has been detected, reading the bus while writing to it (requires more hardware) and confirming that the data you read from the bus is the same as the data you wrote to the bus, and random delays before retrying a failed communication. That last one is probably the trickiest to get right, since random numbers on Arduinos aren't really random unless you "seed" them from a truly random source. You don't want both ends delaying for the same amount of time to retry otherwise it will never complete.
Since you apparently want to achieve that kind of thing but without using RS485, it all gets much more complex.
No, you cannot "swap" the functionality of the TX and RX pins in the Arduino. BUT you can do serial communication (albeit somewhat heavyweight) using pure software. Take a look at the SoftwareSerial library - you will most likely need to make modifications to that to achieve what you want.
To do it externally with hardware is possible, but the end result will most likely be more complex than just using a simple RS485 interface chip which are very inexpensive and easy to get hold of.
Yes, you could use relays (clunky) or buffers, or multiplexers, etc, but why would you when RS485 does what you want?