To answer to your question we need to know what are you meaning when you are saying "really long file name".
1. full path is too long. For example, c:\very\long\path-name\with\very-long-file-name could exceed the OS limitation (~8K chars per the object)
2. file name itself is too long. For example, c:\some\short\path\very-very-very-long-file-name.
It is not important how these cases was accomplished. Fro example, under cygwin it is possible. In this case use the same tool or application for deletion this kind of files.
One way - I guess it is true for the case #1 above
subst x: c:\very\long\path-name\with
subst x: /d
Another way - use short names for deletion
for %f in ( "c:\very\long\path-name\with\very-long-file-name" ) do @del "%~sf"