It depends on the hardware involved. Juniper for example will drop the LLDP packets when there is no native VLAN configured (a VLAN in which all untagged traffic will be forwarded in).
Cisco for example will always send the LLDP tagged in VLAN 1. Juniper itself sends the LLDP untagged.
So it highly depends on your gear.
Firstly, it does look very much like you have had a broadcast/multicast storm and an external loop would do it. So, some sort of mitigation with spanning tree, loop protection, multicast rate limiting sounds like a plan.
With LLDP, the packets are sent to addresses in the IEEE reserved multicast range, which should not be forwarded by an intermediate switch. So, in a switched network you should only see direct neighbours. With CDP, the announcements are sent to a multicast address in Cisco's range, which by default will be forwarded. So seeing multiple CDP devices on one port is normal in a multivendor environment.
Your problem is that you are assuming that when you type show lldp info it shows LLDP information. Actually, on the HP 5412, CDP and LLDP share a common database. You just see different views of it with show lldp info and show cdp.
When the LLDP information is derived from CDP announcements, it is usually less complete. So even on the short report, you have a column (Chassis-ID, I believe) missing on all ports except D14 and D15. If anything, the thing that puzzles me is why you have only 2 LLDP entries and not 8. Certainly the behaviour on port D18 is expected, if slightly quirky.
TL;DR Turn off the CDP receiver or mentally filter what show lldp tells you on Procurve.
Best Answer
802.1AB defines several (3) multicast addresses for LLDP that a compliant switch should not forward.
That said, an unmanaged switch with no specific handling for multicast will very likely treat LLDP (and any multicast traffic) as broadcast and spam it to every port.