I would say yes, though 'need' may be too strong.
All your hyphenated pairs are in effect adjectives, and if you have two or more adjectives which independently modify the same noun, it is more usual to use commas than not: a long hot summer; a cold dark night; a short brisk walk a long, hot summer; a cold, dark night; a short, brisk walk
I would not use a comma in "a 30-day money-back guarantee."
Although I would agree that "money-back" does indeed modify "guarantee"
and could therefore be termed an adjective,
"money-back guarantee" is actually a bona fide noun.
Hi, moonglow. I think you put your finger on it in #4: It's not a guarantee that is 30-day and money-back.
First you take "guarantee" and modify it with "money-back";
then you take "money-back guarantee" and modify with with "30-day".