Since this past July, my system with an NVIDIA GT218 [GeForce 210] card worked just fine with nvidia-drivers-334.21-r3. When I did a emerge --sync and an emerge world today, this got downgraded to 331.113 because the working version was removed from portage.

Unfortunately, the downgraded version prevented most X windows programs from running due to a missing /usr/lib64/libEGL.so.1 and a broken (symlink) /usr/lib64/libEGL.so. The symlink was to opengl/nvidia/lib/libEGL.so.334.21-r3. The 331 version did not provide an equivalent libEGL.so; it only provided a libGL.so.

I then tried emerging nvidia-drivers-343.36 which installed but with a warning saying it would not work with my hardware. Which was true. Then I emerged nvidia-drivers-340.65 which is now working.

The closed source nvidia-drivers are often a gigantic pain. But most of the problems I've run into over the past few years is when the devs remove from portage the version of nvidia-drivers I have working. I have repeatedly asked that the devs stop doing this. I realize we need to keep the portage tree neat and tidy but the nvidia-drivers should be an exception to this. The combination of the closed source drivers and the wide variety of hardware makes things difficult enough already. When you remove working versions you are probably making somebody's X windows unusable until they can figure out via trial and error what different version works on their system. Deleting working versions and all the masking really seems to make things needlessly difficult.

If there is a problem/regression upgrading to a newer version, make sure that a bug report exists which exactly lists the affected driver versions.
But even then, the maintainer can decide that supporting that version for a limited number of users is too much of a burden. Copy the ebuild of the version you want to keep into a local overlay (download from sources.gentoo.org if necessary), and ask NVidia to fix their drivers.