They have kind of a lot of uses, but I think generally 気持ち is 'feeling', both emotional/psychological and physical, whereas 気分 is 'mood', or a general way to refer to your state of mind.
そういう気持ち、よくわかるよ
I know the feeling.
飲みに行く気分じゃないんだけど
I'm not in the mood to go drinking.
I think some of the idiomatic usages are synonymous, and flicking through my idiom dictionary, it looks like a bit of a marathon explanation that is beyond me

Maybe someone else can offer some more insight...