This is because of the following problem.
<GameModifier>
<ModType>Player</ModType>
<Attribute>UnitAttackImmunity</Attribute>
<StrVal>Caravan</StrVal>
<Value>1</Value>
<Provides>Caravans are immune to attack</Provides>
</GameModifier>
The associated unit for the caravan route is called
<UnitType InternalName="TraderTest">
<DisplayName>Caravan</DisplayName>
<Description>Caravans boost your economy by allowing merchants in your cities to trade goods with each other.</Description>
<CanBeDesigned>0</CanBeDesigned>
<Gender>Male</Gender>
<HasWages>0</HasWages>
<IsCaravan>1</IsCaravan>
<IsSovereign>0</IsSovereign>
etc...
The proposed fix is to rename one of the strings... either the internal name or the other string value. I'll post the fix for the renaming of "TraderTest" to be "Caravan", just to make life simple. Here is the fix.
https://dl.dropboxusercontent.com/u/75549875/Fallen%20Enchantress/Abilities/CaravanUnitFix.zip