Ist es möglich, dass Du vielleicht gnupg 2.1 oder aktueller nutzt? Private Schlüssel werden ab dieser Version in ~/.gnupg/private-keys-v1.d/ gespeichert, secring.gpg wird nicht mehr genutzt. Da du das Execute-Bit aller Elemente im .gnupg-Verzeichnis entfernt hast, sind Unterordner von .gnupg nach obenstehendem Befehl nicht länger zugängig, und der gpg-agent kann nicht mehr auf seine Dateien zugreifen.
Wenn meine Theorie stimmt, setze die Rechte nochmal komplett neu. Achte darauf, dass Verzeichnisse das Execute-Bit zumindest für den Eigentümer gesetzt haben müssen, damit du auf sie zugreifen kannst. Ein Beispiel: