A simple regex-replace on the html buffer does the job:
(defun compactify-html-table ()
(interactive)
(goto-char (point-min))
(while (re-search-forward "<\\(/?t[rd]\\)>\n<\\(/?t[rd]\\)>" nil t)
(replace-match "<\\1><\\2>"))
(goto-char (point-min))
(while (re-search-forward "\n\n" nil t)
(replace-match "\n")))
UPD: how to apply to all open html buffers:
(defun compactify-all-html-buffers ()
(interactive)
(mapc
(lambda(b)
(with-current-buffer b
(when (eq major-mode 'html-mode)
(compactify-html-table))))
(buffer-list)))