Ethernet, in its various forms, embeds clock timing in the stream (such as the Manchester encoding used for original 10Mbit Ethernet), or provides a means to identify and recreate the clock to properly decode symbols using special markers.
Either way, the timing for this embedded clock comes from the transmitting source, and the receiver is obliged to recreate it locally. It does so as long as it can see a signal from the transmit link partner, for the duration of a packet. The receiver compensates for any mismatch (drift) between the two clock sources as it recreates its local clock.
UART receivers also recreate a local clock using two things: a shared understanding of the baud with the transmitter, and alignment of its sampling clock using the start bit. But unlike Ethernet, the UART recovered clock is only effective for one frame time (typically 10 bit times including start and stop for 8N1 serial.) It’s not continuous. Successive UART frames have no known phase or delay to each other.
This is a long-winded way of saying that UART is asynchronous, while Ethernet is semi-asynchronous, or more precisely, plesiosynchronous at the packet level. That fancy term that sounds like a the name of a dinosaur just means that the link partners use a similar clock frequency, but the clocks at each end are not locked to each other.
Ethernet packet-to-packet timing isn’t defined by a clock however, so in a broader sense Ethernet is asynchronous.
The Ethernet receiver has to compensate for any drift between the transmitter and its local clock. As it is, Ethernet is packet-oriented, with data flow is managed in higher levels of the protocol stack to avoid over- or under-run conditions.
As far as how data get sent, that's a higher-level question.
You can encapsulate serial UART (byte-oriented) streams over Ethernet, as an application-to-application connection. A common way to do this is by a software mechanism called sockets. A socket is basically a serial data tunnel through an IP network, and looks like a physical serial port to the application.
You can also send IP streams over a UART, using protocol like PPP or SLIP. This method is how a serial modem provides an internet connection. PPP still persists within cellphones for example, as the protocol used to connect the phone’s application processor to the baseband radio, and it shows up with other modems as well.
So you can wrap serial in IP and send it over Ethernet, or you can wrap IP in serial and send it to a network. Confusing? You bet. Lucky for us, there’s a roadmap that explains this, called the OSI layered network model. More here.
As you look OSI, consider the interfaces and how they’re used and use the OSI model to help determine the ‘who encapsulates who’ untangling. OSI also is helpful in understanding how to make application frameworks that are network-independent.
”smells like seven layers, that beaver eatin’ Taco Bell” - Les Claypool