Strictly technical answer: No computer in the world is capable of producing "truly" 100% random numbers. The actual term for values produced by a RNG is "pseudo-random."
Practical answer: For human purposes, all a RNG has to do to be considered random is to be unpredictable (non-deterministic). Unless you are yourself a super-computer that happens to be privy to the seed data and algorithms used, modern RNGs are as random as you'll ever need to get. No human could possibly predict the patterns produced. For something as brain-dead simple as simulating a random shuffle of 52 cards, even the most basic of RNGs are typically sufficient, and from what I've heard the RNGs used by gaming sites are quite sophisticated.
The real challenge to RNGs is being crackable by computer, not by the human brain. If a crude seeding and algorithm are used, and can be figured out, then the RNG can certainly be crackable by a computer and reliable predictions made.
Also, online gaming licensors audit RNGs for randomness as a requirement for licensing.
Yes the cards dealt are 100% random, I do a little programming and I learned how the random numbers are generated. They generate a number by counting the seconds from since 1970 so that value always increase, which allows you to get a random number from it. It probably doesn't make much sense to you, but take my word for it, it's as random as it gets.
I've been a professional software developer for about 25 years now and have written more than a few RNGs. What you describe would be a really really crude one, and would never approach 100% random. Using a seed based on a static point in time is about the most basic and easily crackable of RNG's. No poker site would use something so crude. I doubt even the basic RNGs from modern language runtime libraries are that crude anymore. In fact the standard C runtime library requires a seed to be passed into it before you ask it for random numbers, it does not automatically use seconds since 1970 or anything else as its seed.
There are many many different implementations of "professional" RNGs. To produce the most random results possible, you need to start (seed) from a complete state of entropy. The number of seconds since 1970 is highly predictable (deterministic) and not at all entropic. Modern RNGs use a variety of methods to ensure non-deterministic seeds and patterns. Such as sampling the bits flowing over a network connection, or sampling and averaging user mouse movement coordinates and sending them back to the server, or using a radio receiver to sample RF static from the environment. An uncrackable RNG employs all sorts of sophisticated methods to establish non-deterministic seeds and then apply closely guarded algorithms using those seeds. And most will reseed and reset on an ongoing basis.
Bottom line is all modern, well-establishing gaming sites are using RNGs sophisticated enough to, for all human practical purposes, guarantee that your cards are random. Anyone saying different is just woefully ignorant of variance or trying to explain their poor results. Or just a tinfoil hat wearing rigtard.
Oh, and as far as the shuffling algorithm used, Stars is the only site I know of that uses what is called a static shuffle or "set" deck. Basically just like a live dealer, where the order of the deck is predetermined and doesn't change during the hand. All other sites use a constant shuffle where the remaining deck is constantly being reshuffled, hundreds or thousands of times per second. So if you take an extra second to make your decision, the next card is going to be totally different. And the flop you see when you fold is not the same flop you'd have seen if you called. This is also why the "rabbit" feature that many sites do now is strictly for entertainment purposes of the fish and not actually legit, because you can't rabbit from a constantly shuffled deck. And it's kind of funny that the only site that could truly rabbit -- PokerStars -- doesn't offer it (AFAIK).