It's due to Juniper's frustrating implementation of lldp that varies per platform. Long ago when it was initially built they made certain decisions that were bad, like defaulting to using the snmp index for the interface name TLV and using the interface name in the interface description TLV. I've bitched about since the very beginning and they absolutely refuse to change the default behavior. Instead, they have slowly added options so you can change the behavior to make sense but they haven't been consistent about updating the pertinent code for all of the platforms.
To have it put the interface name in the interface-id TLV it sends, add the following line to your configuration:
set protocols lldp port-id-subtype interface-name
They also added an option to let you choose if the interface description TLV should use the interface alias (interface name) or interface description. It used to default to the interface alias but seems to shift automatically to use the interface description if the port-id-subtype was updated.
There is another option that has been added recently that only affects how the local switch displays information in show lldp neighbors.
set protocols lldp neighbour-port-info-display port-id
That will make "show lldp neighbors" show the port-id TLV in the "Port info" column instead of the port-description TLV. That's typically what you want, but if you have other Juniper gear that is still sending out lldp packets with the useless snmp index that can't be updated, you can change "port-id" to "port-description".
I'm still hoping that eventually LLDP will be implemented in Junos core and the various platform-specific LLDP implementations will finally go away.
-Chad