Caravans have base movement values explained as "Range", caravans with no tech and no buildings enhancing it, have "10 plots" of movement as is clearly visible in the "Establish trade route" window of the caravan.
Caravan: 10 +50% with Caravansary (+50% for Arabs).
Cargo ship: 20 +50% with Harbor.
As you know each tile has it own movement cost value affecting units, it does the same thing with caravans. All hex with road improvement cost 1/2 movement point to pass through, this value goes up to 1/3 with Machinery. Meaning that you can extend the range of the trade route by up to 3 times from it original value.
You can learn more about movement cost from this post :
http://forums.civfanatics.com/showthread.php?t=446879#actionCosts
Range between cities has no effect on income, only thing affecting trade route income
are : -Both cities gold production
-Buildings such as market, bank, caravansary, etc...
-Different recourses (All types count not only luxury or strategic. Things like cows, sheep, bananas, wheat, fish, etc...)
- River on the receiving city
Summing it up, caravan can transverse a set amount of movement points worth of tiles. This dictates the range at witch it can establish trading route, being decreased by difficult terrain or increased by the tile improvements such as roads or railroads.
Range does not affect the income but two distant cities are more likely to have different types of resources boosting the income. Basically it opens more trade options that can be established.
Tested this in single player.
I hope this helps.
P.S. Iroquois have ALL forest and jungle count as roads even outside of their territory. Most of the times this puts their caravans at the same level as Arab caravans FYI.