I used to have exactly the same problem until I found that the shape of headphones bundled with Xperia Z works for me - doesn't fell out and feels comfortable. I believe it's a matter of testing different models.
Same for me. The only comfortable earbuds that don't fall off when walking around are Sennheiser. The pair of CX300 I had were the best, though they had a short lifespan (< 1 year) due to the plastic cable.