In general static bodies have quite little overhead so in terms of performance probably we should only look at collisions.
It would seem pretty intuitive that "simpler" polygons (where by simple I mean lower amount of vertices) should be faster but actually the engine is quite advanced in that regard. You can look at Collision.cs and especially FindMaxSeparation(). In the
end probably eveything will depend on the number of collisions. A standard platformer doesn't have that many collisions going on to make a difference. I have a scene with 300 bodies and 100 simulatneous collisions and I have found the need to keep the shapes
as simple as possible but that's just a heuristic.
Same reasoning for question 2 - might be faster to have many small bodies but (big BUT) for the engine to find out the correct vertices of a large body is just a computation of a few dot products so the overhead of the small bodies could easily outweigh
a theoretical benefit. I'm again speaking just from reading the code, haven't actually benchmarked anything.
3. Terrain made of polygons has pretty nasty issue outlined very well in this thread on the Box2D forums: