This is impossible. You have to handle the cases where there isn't an NBTTagCompound attached to the item at all. The best way is to stop using NBT alltogether and use capabilities since a capability will always be attached to an ItemStack regardless of how the stack was created.
Use Item#getSubItems, create a new ItemStack, assign the NBT needed to it and add it to the list.