Just renamed menu.lst to menu.lst.original and poof, another menu.lst magically appeared. Something is automatically generating this file.

.
Just had another crash on user02, and now the crash takes me to a text screen as there is while verbose booting.
Since your modeline option is not in menu.lst, I can't try it to see if it will help. I can not save the edited menu.lst without something overwriting or generating a new one that says "nokmsboot".
/var/log/messages shows:
Feb 22 11:59:43 localhost kdm[889]: Cannot execute 'grub-set-default': not in $PATH.
Feb 22 11:59:49 localhost acpid: client 891[0:0] has disconnected
Feb 22 11:59:49 localhost acpid: client connected from 3436[0:0]
Feb 22 11:59:49 localhost acpid: 1 client rule loaded
Feb 22 11:59:50 localhost kdm_greet[3444]: Data directory "/var/lib/kdm" not accessible: No such file or directory
Feb 22 11:59:59 localhost net_applet[3688]: ### Program is starting ###
Feb 22 12:01:01 localhost CROND[3927]: (root) CMD (nice -n 19 run-parts --report /etc/cron.hourly)
Feb 22 12:02:04 localhost kdm[889]: X server for display :0 terminated unexpectedly
Feb 22 12:02:04 localhost acpid: client 3436[0:0] has disconnected
Feb 22 12:02:04 localhost acpid: client connected from 3984[0:0]
Feb 22 12:02:04 localhost acpid: 1 client rule loaded
Feb 22 12:02:04 localhost kdm_greet[3992]: Data directory "/var/lib/kdm" not accessible: No such file or directory
Feb 22 12:02:14 localhost net_applet[4234]: ### Program is starting ###