Should work, see https://forums.elementalgame.com/390276
Now, I'm not sure how you would get it build, but I imagine you can create a unit and give it the ability to place an improvement.
Provided such a unit is possible, the improvement itself would simply need a few xml tags as follows:
<RequiresCity>False</RequiresCity>
<SupportedTerrainType>Land</SupportedTerrainType>
<ZOCMinRadius>1</ZOCMinRadius>
<ZOCMaxRadius>5</ZOCMaxRadius>
<ZOCRadiusTurnsBeforeUpdate>1</ZOCRadiusTurnsBeforeUpdate>
This 'should' give you an improvement that starts with an influence radius of 1, and grows 1 square per turn, for 5 turns.
An example of the complete Improvement text would be:
<ImprovementType InternalName="Malloreon_Watch_Tower">
<DisplayName>Watch Tower</DisplayName>
<Description>Watch Towers increase your realms area of influence</Description>
<TileDesign>Malloreon_Watch_Tower_01</TileDesign>
<RequiresCity>False</RequiresCity>
<SupportedTerrainType>Land</SupportedTerrainType>
<DrawnIcon>watch_tower.png</DrawnIcon>
<IgnoreDuplicateImpLimit>True</IgnoreDuplicateImpLimit>
This would cause the game to look for the tile called Malloreon_Watch_Tower_01 and refer to it as Malloreon_Watch_Tower. I'm not sure yet about how to assign graphics to the cloth map, but it might be the <DrawnIcon> tag, in which case the tower.png would be the graphic that shows up on the cloth map. The <IgnoreDuplicateImpLimit> is important when building the same improvement several times per city - it might not be necessary in this case, as this improvement cannot be built in cities anyway.