Here is my best guess:
Fact 1: It worked better with the relay. The purpose of the relay is to handle the high current to the horn without the high voltage drop that would occur at the horn button contacts.
Fact 2: The horn worked well when connected directly to a 12 volt battery.
Evaluation: Both facts correlate reduced voltage across the horn to lack of function. The horn is in poor condition. Voltage drop in wiring or switch contacts causes it to quit functioning. It is operating very close to the transition from a non-working state to a working state. A very slight effect in the system may shift it from the working state to the non-working state.
Proposed cause: The armature has some residual magnetism. When current flows through the coil in one direction, the residual magnetism increases the attraction of the armature to the electrically magnetized core. The horn works normally.
When current flows through the coil in the other direction, the residual magnetism reduces the attraction of the armature to the electrically magnetized core. This reduced attraction causes the contacts in the horn to fail to open, which causes a high average current flow, which causes a high power dissipation in the horn button since the horn button switch has a high voltage drop, which causes the horn button spring to heat up and loose its temper, which causes a new horn button spring to be purchased and installed.