No Root: How to delete 0 byte in root storage of internal storage? This is the same to this question:
Can&#39;t delete file in download folder

But for me the answer is not clear, as per the OP's answer 'he turned on the SD Maid app' but did not stated what option in SD Maid resolved the issue. The OP stated as well 'he deleted the whole directory' but not specified if using SD Maid or PC.

We have the same scenario where I redownloaded the same file and after copying it to the exact location where I'm having issue it made two identical files and what I tried so far:


Highlighted both items and deleted it using SD Maid, it says success but after refresh it retain the other file with 0 byte.
Connected my phone to PC as MTP and tried to delete it from there and what I noticed it only shows one file unlike looking in the any Android file manager. It says success but checking it again in the phone it retain still the file with 0 byte. 
Tried apps in playstore that says secure delete that uses different algorithm but still after it says yes the same scenario occur above.
Perform wipe cache partition in the stock recovery


Clear data and cache of stock file manager



I know my last resort would be complete factory reset, but is there any other way?
I was having this exact same issue with two phones. Which I smashed the first phone on the floor with anger.
I tried everything like, using force delete on Windows Explorer AND ADB Shell, but none worked.
Then I installed the SD Maid app despite of knowing that it didn't delete the file I wanted.
But at last, I removed the whole folder with the app, and it finally worked.
But, I tried to delete the folder by the file explorer of my phone and everything except that annoying file got deleted. Then I deleted the folder (with the 0b file in it) with SD Maid.
Hope this helps.