Are you using Sage HTML Forms? I’m having the same problem using that. My forms submit fine and are being received thru MailHog but the subject and body are empty. However, they do post the submission in HTML Forms tables in the backend.
When you pass a data array to a view, the array rows are converted to variables that take their names from the array keys. Your template is trying to access values in an array, not the correct variables, which is probably throwing an error and resulting in “no content.”
I don’t know what you expect this code to do. The buffer functions only capture stuff that is put into the buffer and nothing in between ob_start/end_clean() outputs anything. Also the you call template() with a variable you don’t set until several lines after your call to template().
I would start by breaking this down to something that functions, then incrementally add in functionality until you find the part that breaks, then examine your logs to see if it’s throwing errors.