After running the same file that I uploaded that doesn't work correctly I thought I would try it with the Ultimaker S5 and guess what it does the exact same thing (does not move to the prime tower and purge the old color on the first exchange, just changes color right in the middle of the print). Of course, since it has 2 different nozzles the contamination (or in the S5's case blob) isn't as noticeable but it's there. Just run the Cura simulation and you will see it never goes to the prime tower. Make sure you turn off brim or skirt. Cura 3.4.1 is the last version that does not have this behavior.