clearly time travel is used multiple times throughout the zelda franchise, but not in the same way and i read somewhere a few things about the types of time travel used. il compare ocarina of time and majoras mask. In ocarina it is key that you travel back and forth to unlock certain elements of the game - like the song of storms. In Majoras Mask however, the only reason time travel to the past is necessary is so you dont die after the 3rd day. without that element you wouldnt have to travel back in time in MM.
on to the song of storms. In ocarina of time you learn the song as an adult because a child (young link) played the song to guru guru 7 years ago. This is a fact in the future no matter if you have done this in the game or not. This could imply that in the timeline of the game, you playing the song of storms for him is a set event that can not be changed. It is inevitable. that way even if you havent learned the song yet as an adult, you were already destined to play it for guru guru as a child.
Say the same windmill situation was in majoras mask. say you know the song of storms and play it for guru guru messing up the windmill. that would completely change the timeline of the game and create a future where the windmill is messed up. however, as we know in majoras mask when you return to the first day almost all events you have done are erased and reset. This being said, you clearly havent played the song for guru guru. Now if this time around you dont play the song for him, the windmill will not be messed up in the future, realizing now that choices you make in the past can completely change the future, where in this situation in ocarina, the messed up windmill future is inevitable.
now im not saying that the "your actions affect the future" time theory isnt present in ocarina of time. In fact it is this actions effecting future theory that creates the split timeline. im just saying that the song of storms scenario is not avoidable for whatever reason.
hopefully this helped and hopefully i dont sound stupid lol