Dans la vie coûte cher, "cher" est un adverbe donc il ne s'accord pas avec le sujet.
Dans l'autre cas où la vie est très chère, chère est devenu un adjectif donc ça s'accorde.
Je viens de demander à mon amie professeur de français, car j'avais oublié cette règle ;)