Видно split() имеет свои виды на паттерн...
const val = `[]Заголовок
Некий текст описывающий товар.
Продолжение описания на другой строке.
[t]Название; Значение
Жиры; 10
Белки;20
[]Другой заголовок
Простой текст для рассказа о товаре
`
const re = /\n\s*\n/
console.log(JSON.stringify(val))
console.log(val.split(re))