OpenVPN doesn't works with TCP
Solution 1:
The server log is very clear on why it's not working.
TCP/UDP: Socket bind failed on local address [undef]: Address already in use
You've got something else running on that combination of protocol/port. You can take a look what it is by doing netstat -nlp | grep 1234
(change port number accordingly) and kill that process or move that to another port.
Solution 2:
I solved the issue in server, changing the management port to different port of openvpn port.
port 8080
management 127.0.0.1 8081
And in the client removing the following line, since it is not supported in TCP mode.
explicit-exit-notify 2
Solution 3:
First of all, are you sure TCP connectivity between the client(s) and the server is ok? You can test it by simply telnetting to the server (make sure the OpenVPN server is running):
telnet x.x.x.x 8080
If it does not connect, it's not an OpenVPN problem, you should like in firewalls and the like. Port 8080 is sometimes used by HTTP service, and is thus being blocked by some firewalls and/or intercepted by some transparent HTTP proxies. If you have TCP connectivity problems on port 8080, try a different port - maybe port 1194/tcp which is the IANA reserved port for OpenVPN.
If telnet does connect, TCP connectivity is probably ok and the problem could be in OpenVPN. You should improve your question by adding some OpenVPN logs.
And, by the way, why don't you stick with the UDP protocol? Why do you think you need TCP?