There are a couple of suggestions
here that may help.
Maybe the keychain is set to lock after some period of time passes, and that setting persists even across reboots? Barring that, a corrupt keychain entry would be my next guess. (The linked page should help with both those possibilities.)