Well, I did that tutorial awhile back so I am semi familiar with it.
The problem is, though I have been a developer for a long time, I am definitely a noob when it comes to UE4, so take my advice with a grain of salt
From a logical standpoint, I think if I were trying to accomplish what you are doing, I would change the ‘nextspawnpoint’ variable (I think that is what it is called) into an array. It would normally only have one value in it, and hitting your box collision that spawns the next tile 10 tiles out would have the same outcome, but it would be doing a foreach through the spawn points.
Then when you were ready to split, the split tile you place would have two spawn points, it would still be 10 tiles out, so you would essentially be spawning twice the tiles for the next ten tiles, as it would be building two roads. Then once they hit the canTurn box collision and make the turn, dump the no longer needed nextspawnpoint from the array and your road would only continue to build in the direction you are currently going.
Of course it wouldnt be that easy, you would probably need another collection that stored your intersection nextspawn points so you could kill the actors that are no longer needed the direction you are going, and you would have to decide if you want to make it easy and only have one possible split path at a time. And to know which nextspawnpoint to kill, you would probably just want to keep it convention based and always have left first and right second or some such.
It actually sounds like something that would be pretty fun to write
Hope that is helpful and not just more confusing!