Yes, you can do that with a visual flow. It's simply evaluating a formula where the Event's
StartDateTime, depending on how you set it up, evaluates using a formula similar to:
DATETIMEVALUE( TEXT( MONTH( Today() ) ) & "/" & TEXT( DAY( Today() ) ) & "/" & TEXT( YEAR(Today() ) ) & TEXT(7:59 AM) )
Using Apex code it would be much simpler, but you might need to create an Apex Plugin to do that. Not certain on the need for the plugin as I've only used flow a couple of times.
You might be able to get away with a formula that's as simple as:
DATETIMEVALUE(TEXT(Today()) & TEXT(7:59 AM) )
If I were using Apex, I'd do something like:
StartDateTime = DateTime.parse(format(today()) +' 7:59 AM');
So, the actual methodology would depend largely on how you construct the logic of your flow and the variables you set it up to work with. Hope this gives you a few ideas to get you started.
Since you're passing StartEventDate__c into your flow instead of Today(), it's assuming DateField__C can hold any date you might enter whether its valid or not. You're going to need to add some logic to reflect that. Tips on how to do what you need is contained in Using Date and Date/Time in Formulas, including how to get leap years. You might also find this document helpful to you as well Tips for Reducing Formula Size.