For the longest time, for every Xeon CPU, there was a corresponding and equal i7 CPU. Equal in all respects. For the i7 920, there was the Xeon X3450. For the i7 2600, there was a Xeon E3-1270, for the i7 3770, there was the E3-1270v2, and so on.
They did start moving away from each other with the advent of the 10, 12, 14 core CPUs that were only available on the Xeon line. However, you probably have heard there's a new i9 line coming out which will include those higher-core numbers.
ECC RAM, yes. Servers only. Does it make a server last longer or perform better? No. At least not in a noticeable way.
The CPU being designed for working 24/7 or several hours per day makes no sense. They come out of the exact same silicon dyes. Architecturally and physically, the CPU cores are the exact same thing. I have also plenty of example cases as I have original i7 920s still running, non-stop since they came in almost ten years ago. I also have Pentium 4 servers for that matter.
The fact that these myths exist is why customers will prefer Intel over AMD, Xeons over i7s, etc. It's just the perception that they are "better" when in fact they are the same. Two CPUs from the same generation, an i7 and a Xeon, running at the same speed, will give you indistinguishable performance. The label doesn't make either one better or more reliable.
The quality of the motherboard could. The speed of the RAM could. The quality of the power supply could make one crap out sooner than the other. All of those are independent of the CPU and fall on the provider to choose good quality parts.
I am talking apples to apples here, such as the CPU examples I gave above. If you're comparing an i7 7700 with a Dual E5 2650v4 then that's not a fair comparison. But when the only variable is the label on the CPU, then that shouldn't be one of the factors to consider when making a decision.