I have 3 RPi 3B+, all exhibit the same behaviour. 2 were bought a while ago, one more recently.
When starting, on lucky days, they will get an IP from DHCP. If not lucky or upon first reboot, they no longer get an IP. Using ifconfig eth0 up to set a fixed IP succeeds, but still no network access. I ping to/from them, but network sniffing shows nothing. I've connected them directly to another machine, to bypass the switch, no difference.
I'm using the latest Raspbian image (2019-07-10), just put it on SD card and boot (and enable SSH).
If I disconnect an RPi3B+, put instead a 2B and put the same SD card in the 2B, works like a charm.
I've tried some 2.4A USB power supply. I'm otherwise using a voltage regulator, hooked its output to oscilloscope and checked, I'm getting Vavg = 5.01V, Vmin = 4.93V, Vmax = 5.05V. No dipping, so I'm pretty sure it's not a power issue (this regulator is rated 3A @ 5V).
I get the yellow LED lit, and it blinks when I try pinging. All my equipment is 1GB compatible. Sometimes on boot up I get DHCP request packets, most times, nothing. Getting DHCP packet does not necessarily result in getting an IP, but then, setting up a fixed IP allows communication. When communication doesn't work, using dhclient doesn't cause any packet to be intercepted by network sniffer.