How to remove shipping fee from second item when it ships WITH the first item that ships free?

Our main products ship free. Our Accessories and Spare Parts do not. (Yes, it would be easier for all if everything shipped free but it doesn’t work that way.)

If the customer buys the main product and ADDS an accessory or spare part, we can ship them in the same box and we want that accessory/spare part shipping fee to disappear at checkout.

I have a general shipping rate created for the main products at Free.

I have custom ship rate fees created for the accessories and spare parts.

How can I make this work?

Why has no one addressed this? I have the same issue.

@Shopgirl2 @CarolWPB
This would take less than a minute to set up with Advanced Free Shipping.
We have advanced checkout rules (such as if checkout contains X item than make shipping rate free etc).
You can even add multiple rules, such as adding a cart qty rule (if theres a limitation of how many items you can pack in a box!)
Let me know if I can help you setting it up. Thanks