One of your Windows entries is really Windows using bootmgfw.efi and the other is using grubx64.efi.
Code:
Boot0000* Windows Boot Manager HD(1,GPT,41877807-eeac-4f2d-833b-2f2f204f7447,0x800,0x82000)/File(\EFI\Microsoft\Boot\bootmgfw.efi)RC
Boot0002* Windows Boot Manager HD(1,GPT,41877807-eeac-4f2d-833b-2f2f204f7447,0x800,0x82000)/File(\EFI\ubuntu\grubx64.efi)WINDOWS.........x...B .C.D.O.B.J.E.C.T.=.{
Years ago one of the work arounds for HP was to use grub or shim with Windows description. HP internally has UEFI use description as part of UEFI boot and only valid description is "Windows Boot Manager". But Windows update usually overwrote that entry. We then found the hard drive entry worked, so stopped creating the Windows description one.
Many with HP and UEFI update, say it works so HP may have removed that description limit. It was a violation of UEFI spec that says not to use description as part of boot. They also say that using efibootmgr to change boot order does not seem to work, but using HP's UEFI will let you change boot order.
See
man efibootmgr
You can delete the old Windows entry using grub.
sudo efibootmgr -v
The "-v" option displays all the entries so you can confirm you're deleting the right one, and then you use the combination of "-b ####" (to specify the entry) and "-B" (to delete it). Examples #5 is delete:, with Ubuntu you need sudo, others must be at root. some need all 4 hex chars, others only need significant digits
sudo efibootmgr -b XXXX -B
Bookmarks