How does data travel inside a wire?
How does this current carry the data?


Current and voltage are inseperable. The current is flowing because there is a voltage on the wire, and there is a conductive path from that voltage to a lower voltage. 

So we can say the data is encoded as voltage pulses or current pulses, it doesn't really matter. Often a high voltage (5 V) indicates a "1" and a low voltage (0 V) indicates a "0". But you could choose any two voltages you like. 3.3 and 0 V. 0 and 3.3 V. -0.8 and -1.2 V. According to what works best in your design.


  I read somewhere that wires transmit data almost at the speed of light. How?
  What is carrying my data? Only EM waves travel this fast.


Another way to look at things is that the voltage at a location on the wire is just a simpler way of looking at the fact that there is an electric field between the wire and everything around it. 

When a signal propagates along a wire, it's actually the electromagnetic field between the wire and a nearby "ground" or "return" conductor that is propagating. So it is actually an EM wave, not a massive object (like an electron) that is carrying the signal along the wire.