Try this; temporarily add the following to the project file that is failing:
<Target Name="DiagnoseNullItems"
BeforeTargets="ResolveComReferences"
AfterTargets="ResolveAssemblyReferences">
<Message Importance="High" Text="COMReference is '@(COMReference)'" />
<Message Importance="High" Text="COMFileReference is '@(COMFileReference)'" />
<Message Importance="High" Text="ReferencePath is '@(ReferencePath)'" />
<Message Importance="High" Text="_ResolveComReferenceCache is '@(_ResolveComReferenceCache)'" />
</Target>
I think that is all of them, unless some of the other $() arguments to that task are also of type ITaskItem. If that doesn't reveal an empty item, do the same for the properties passed to the ResolveComReference task.