Are you assigning your "air" tiles as actual farseer geoms? If so, try not including your "air" tiles in your tiles array.
What I did was first run my map through an xy loop to count the total size of the map, and save it in map[y,x] array.
Through each iteration, pass the map[y,x] array through a switch to assign each 'tile character' in your map as either an 'air' tile,
a passable tile (non-platform tiles), a Farseer tile (platform tiles), player, enemy, ect.
Use the xy values to store the world position of each object in the map. e.g. new Vector2(x * tileWidth, y * tileHeight);
Then do a foreach loop on your FarseerTileArray, PassableTileArray, EnemiesArray, etc. to create the your map objects
as either a farseer body & geom tile, non-physics tiles, player body & geom, enemy body & geom, and so on.
And dont assign anything to the "air" tiles. (In my case all the '0's in my map).
I not exactly sure that is your problem but it might help.