If the key stored in signature key and encryption key is the same key, when trying to decrypt, gpg will complain “decryption failed: No secret key”. It still works for signing.
(the quote below is directly copy&pasted. Sorry if you cannot read Chinese).
I’m not much more than a successful user of OpenPGP keys and LetsEncrypt, so take what I say with skepticism. I do my OpenPGP key-making with the Seahorse program instead of command line work.
I think you made that statement wrong or you are doing encryption wrong. The key for signing should be the same as the key for decryption. The encryption key is something only others use, never you.
It works off of modulus arithmetic. You have a public key pair of numbers, which relative to you is called the encryption key for others to use to write you messages. One of the encryption numbers is the product of two giant primes selected by you and those primes are kept secret. That product is the modulus base and is known to the world as much as you can find ways for the world to know it, but you use that modulus base in decryption too.
Your plain text message sent to somebody who doesn’t have their own encryption set up can be signed, and they know its correct and from you because your public key deciphers the encrypted version into the plain text version.
When I say “encryption key”, I actually mean “decryption key”. However gpg calls it “encryption key”, (as well as the E flag), that is why I call it this way.
GPG always encrypts with public key and decrypt with private key. So I think there is no misunderstanding here.