I just dont know if this would apply with you, but anyways -- recently I setup one solaris cluster box with 10gR2, and I was having almost the same problem with the dbconsole not starting -- after reading through the logs, I discovered it was a problem with the TZ environment variables not matching one of those that uses the dbconsole. You should try setting the TZ environment variable to something else ( like GTM-youroffset) and running 'emctl resetTZ agent'.
I hope it can help. Also, you should try starting it from the console 'emctl start dbconsole' and see what does it says. It should report a log where the errors goes, try to read it and report it back.