Related node views - some elements with date field, some without. How to include elements with no date in results?
Problem is in the very SQL. No date field in node means null value in result set. Any logical operation with null ends up returning null, see manual. And null is a logical false for conditions. So, each time you test a date to see what are OK, MySQL excludes them - lack of date is not a date in acceptable range.

If views would support negative filtering (exclude matching), it would be just as you want it. But views support only positive filtering (include only matching).

Enough of diagnosis, time for solution!
On the block's header Filter criteria you have a dropdown with add seelcted. Drop it down and use And / Or, rearrange. Make your filters OR, and after date limit add some other filter, one that will return true for no-end-date nodes. Here comes the tricky part - you can select the same field multiple times, but you cannot use null in place of date. If nodes without a date are simply of another content type, you are good. If they are of the same type, you have a problem - I'll add solution for that particular case if I'll find it.