This thread has wandered around quite a lot and it seems to me that it might be helpful to collect some helpful things together.
Firstly, I think we can set aside "hardware failure". There may be some instances with a flakey cable, or a temperature-sensitive component, but that isn't the case with most (all?) of the posts here. The problem clears up and is the connection is solid until a future sleep cycle so hardware failure doen't fit the symptoms.
So let's take a step back and look at what we do have. A Mac of some sort connected by Ethernet to a switch (possibly), then to a router/gateway (probably), next to a modem of some sort and finally the broadband provider's in-station server.
Switch:- not much here. Just a box with no controls or configuration. It might fail but that probably wouldn't be correlated with the Mac's sleep cycle. So this is not a likely cause
Router/gateway: - lots of possibilities and variations here. The typical setup is for it to have a single IPv4 address from the ISP and serve a private network such as 192.168.xxx.xxx for your local devices. It typically provides DHCP to them, and sometimes DNS as well. The connection to the ISP varies too. The simplest is a regular IPv4 connection where the router gets its address etc via DHCP from the ISP. This is usually the case with DSL and Verizon FiOS, amongst others. A second style is used on some cable systems, since the cable itself is a shared (bus) rather than a connection just to you. Since it's shared there must be authentication, so these commonly use PPPoE protocol. There is also a Telstra-special used only in Australia that has authenticalion and heartbeat on the connection.
Modem: sometimes integrated with a router/gateway, or may be separate. These are usually simple but can cause problems in some setups
ISP server: - not usually a problem. If it is then you have bigger issues you need to solve first.
An important part of this chain is that DHCP is usually used between the ISP and the router/gateway, and between it and your Mac. Understanding DHCP is a big help in figuring out what's going on. Your Mac retains its IP address when it goes to sleep, and tries to reacquire it when it wakes up. Mostly it gets the same one but sometimes the lease time expired and the address is now in use by another device on your local network. No big deal - you get a new address and life is good. There was a bug with this several years ago (Tiger, probably) but that has long since been fixed. There is a separate DHCP between the router and the ISP (for the "WAN address") and occasionally this gets into trouble. If it does then you usually have to call the ISP to sort it out. But what sometimes happens is that this DHCP least times out and is not renewed by the router/gateway because there's no traffic. So it has to do that when your Mac wakes up, and sometimes this takes a while. You don't have to call but there will be some delay while the address is re-established. And this is in addition to any delay for getting the local connection going.
Another item to consider is the DNS setting. This usually comes as part of the DHCP info but not all DHCP servers provide it -- sometime you have to configure it manually (ugh).
In order for your Mac to "have an Internet connection", it must have connectivity, and IP address and working DNS. Purists will say that you need only the first two, which is true, but doing anything with, say, Safari requires working DNS. So it's important for troubleshooting to be able to distinguish "no connection" and the Safari-style "no connection to the Internet". There are a couple of things to help you find out if you have connectivity, and DNS.
First is to use System Preferences->Network and check that the connection "Ethernet" has a reasonable IP address, and there is an address shown for "DNS Server". If you are comfortable with Terminal, open a session and try
dig @8.8.8.8 time.apple.com (followed by return, of course)
This is a DNS lookup for the "time.apple.com" address, to be done by the DNS server at 8.8.8.8 which is Google's general DNS server. We can usually assume that to be up and working so if you get no response then that's a big clue that you have no connectivity at all. You should get a response that includes a chunk headed "ANSWER SECTION" with a column on the right with addresses like "17.151.16.31". They're all different but all start with "17." which is Apple's address block. Note also the third-last line "SERVER" which tells you that the query was handled by the 8.8.8.8 server. If this worked then try the local DNS server with
dig time.apple.com (followed by return)
You should get a list that's similar but don't expect it to be identical. If you don't then there's a problem with either the DNS server, or your configuration for which server to use. Check the "SERVER" line to make sure that the response comes from the server you think is configured. If you're not familiar with Terminal then you can do the second check with "Network Utilities" in your Utilities folder. Select the "Lookup" tab in the tool.