I know that keychain items can be removed by the app which added it. But they will remain in the device if even if he uninstall the app. Can a user remove any unwanted keychain item?
No. Keychain items are in iOS sandbox, users don't have access to remove unwanted keychain item. These are accessible via API's only.
As iOS provides API's to access keychain items from sandbox, applications can use these API's to access keychain items. But an application can access only its own keychain items as per https://developer.apple.com/library/ios/documentation/security/conceptual/keychainServConcepts/02concepts/concepts.html
So they are secure enough if they still remain on the user's device when the app is uninstalled.