I suspect you forced the RPM installation for 4 versions of the package. Besides an unofficial kernel RPM, you should never force an installation unless you know exactly what you're doing.
It's easy to remove a package that has multiple installed versions, for example NVIDIA_kernel-1.0-2313 and NVIDIA_kernel-1.0-2151
Usually (with superuser credentials), you type rpm -e NVIDIA_kernel
In this case, do rpm -e NVIDIA_kernel-1.0-2313
I.e. you're fully qualifying the package name and version. So erase all the RPMs, and start over from the beginning (taking the advice of the other replies).
Package management is a good thing, and you should stick with RPMs whenever possible; however there are good cases to allows exceptions.
This is one of the usability problems with Linux. Although NVIDIA_GLX works for XFree86 4.0.2 or later, the kernel driver is version specific. As we can all see, driver installation under Linux is a bit more complex than double-clicking an .exe under Winblows. Of course, there are myriad device driver problems as well under WInblows (of a different nature), so we're not that much worse off.
In this case, what NVIDIA should have done is use the approach taken by VMware: bundled inside _ONE_ RPM are pre-compiled binary modules for a whole assortment of common official kernels. If one of these is not appropriate, it will compile from source instead. NVIDIA has chosen to float 30 RPMs instead, and leave it up to the user to troubleshoot. I believe the reason for this is that the distros themselves (i.e. SuSE or Mandrake) actually build the RPMs, and NVIDIA just posts them up on their official web site.
Finally, why force a kernel RPM install? Because when upgrading a kernel, you shouldn't assume the new one will work flawlessly, so you want to have both installed (and available through the boot loader). Red Hat has specific documentation on how to achieve this.