The universe is funny. I was looking for a solution to this exact thing this morning, then ran across this 3-month old thread that you bumped today. I was about to chime in that I needed a solution as well, but had an aha moment and figured it out. This isn't a solution to the original post, but hopefully the code will inform how to setup IF statements for success.
I have an issue custom form related to business interruptions, and it includes 4 paragraph fields. Generally, not all of the paragraphs will be completed, but I didn't want a bunch of blank columns in my report. I set about combining all four paragraphs into one shared column. "Before" shown below:

Resulting shared columns (with blank columns inserted between with IF statements):

Successful conditional line breaks (in this example, Regulatory and Other Impact paragraphs are blank):

My code. (Be kind if there's wierdness, I still consider myself a text mode amateur, but hey, it works in my case):
column.2.displayname=Impacts
column.2.linkedname=direct
column.2.namekey=Other Impacts
column.2.querysort=DE:Other Impacts
column.2.sharecol=true
column.2.textmode=true
column.2.valueexpression=IF(ISBLANK({DE:Other Impacts}),"",CONCAT("Other Impacts: ",{DE:Other Impacts}))
column.2.valueformat=customDataLabelsAsString
column.3.sharecol=true
column.3.textmode=true
column.3.valueexpression=IF(ISBLANK({DE:Other Impacts}),"","<br><br>")
column.3.valueformat=HTML
column.4.linkedname=direct
column.4.namekey=Goodwill/Reputation
column.4.querysort=DE:Goodwill/Reputation
column.4.sharecol=true
column.4.textmode=true
column.4.valueexpression=IF(ISBLANK({DE:Goodwill/Reputation}),"",CONCAT("Goodwill/Reputation Impacts: ",{DE:Goodwill/Reputation}))
column.4.valueformat=customDataLabelsAsString
column.5.sharecol=true
column.5.textmode=true
column.5.valueexpression=IF(ISBLANK({DE:Goodwill/Reputation}),"","<br><br>")
column.5.valueformat=HTML
column.6.linkedname=direct
column.6.namekey=Regulatory Impact
column.6.querysort=DE:Regulatory Impact
column.6.sharecol=true
column.6.textmode=true
column.6.valueexpression=IF(ISBLANK({DE:Regulatory Impact}),"",CONCAT("Regulatory Impacts: ",{DE:Regulatory Impact}))
column.6.valueformat=customDataLabelsAsString
column.7.sharecol=true
column.7.textmode=true
column.7.valueexpression=IF(ISBLANK({DE:Regulatory Impact}),"","<br><br>")
column.7.valueformat=HTML
column.8.linkedname=direct
column.8.namekey=Describe Interruption
column.8.querysort=DE:Describe Interruption
column.8.textmode=true
column.8.valueexpression=IF(ISBLANK({DE:Describe Interruption}),"",CONCAT("Business Interruption: ",{DE:Describe Interruption}))
column.8.valueformat=customDataLabelsAsString
I hope that is helpful, good luck!