From craven + hearted.
cravenhearted (comparative more cravenhearted, superlative most cravenhearted)