It's got nothing to do with the generator. Horns draw a lot of current. The battery honks the horn. The generator just recharges the battery. All accessories on the car should work fine even with the engine off.
What you've got is a bad connection between the starter and the cutout (which is where the horn and headlight circuits separate). So follow the current: The horn works fine without the headlights, so can't be the horn switch. The headlights work, so it's not between the headlight switch and the headlights. That leaves the connections at the starter, junction box, ammeter, and cutout. Check for loose or corroded crimp connectors. Often, you can't see the corrosion because it's inside the crimp.
You can locate which one is the culprit with a voltmeter. With the engine off, ground one lead of the meter and turn on the headlights. Beginning with the starter, touch the other lead of the voltmeter first to the upstream then the downstream side of each connection while someone honks the horn. When you find one where the voltage drops more on the downstream side than the upstream, replace that connection. There may be more than one bad connection in that section of the wiring, so check them all.