On my ipod I had a similar problem that was fixed by agreeing to the new EULA on iOS 4.
Tried an apple expert - and no solution found (even wiping out the ipod with 'factory settings' did not do the trick.
1. Go into your settings on your Ipod/Iphone. Settings -> Store.
2. Create a new account, but put in all of your existing account settings.
3. Agree to the EULA.
4. You will receive a pop up telling you that an account exists, select log in with the existing account.
5. Put in your correct iTunes account information.