CiviCRM 5.29.0 - import relationships
So your contacts (both individuals and households) already exist in CiviCRM and you have the contact ids for all of them - all you need to do is create the relationships.
I think part of your difficulty comes from the way your data is currently structured.
Create a file of your HoH's with just the contact_id of the individual and the household:
contact_id,household_id
10596,10594

Then at Contacts &gt; Import Contacts:

select your file
tick 'First row contains column headers'
select Update for Duplicate Contacts
Continue

On the next page:

map contact_id to Contact ID
map household_id to Head of Household for Contact ID


Note: if Contact ID is not listed, go back to the previous page and make sure you select Update.
Run the import and you should find the relationships are created.  Then repeat for MoH
However ... creating a file like that from your current one takes a little work.
Depending on your preference you could create that with Excel &amp; Vlookup, or php/perl/etc
Alternatively since you have created external identifiers with a specific relationship between ID1 and UniqueID, you could use those:

extract the contact_id and ID1 for the HoH lines
append '0' to the ID1 field (to create the external identifier for the household)
import as above but map to Head of Household for External ID

Update (following update of the question):
If you don't have the CiviCRM contact ids available, just use the external id's for both parties:

extract the UniqueID and ID1 for the HoH lines
append '0' to the ID1 field (to create the external identifier for the household)
map UniqueID to External ID
map modified ID1 to Head of Household for External ID

This was based on you already having imported the contacts and just needing to import the relationships.  If you are starting from scratch you can import household and HoH in one go, then import MoH.