I think you can siomplify this (If I am reading your requirements correctly)
You want only those orders where
all order items are either Gadgets or Gizmos.
So
Select * from Order O
Where Not Exists
(
Select 1
from OrderItems OI
join Inventory I on OI.InventoriId = I.InventoryId
where O.OrderId = OI.OrderId
and I.Description Not like '%gizmo%'
and I.Description Not like '%gadget%'
)