Вы пытались изменить ресурс, которым вы кормите, на addInline ()? Если бы вы хотели, чтобы ресурс находился в памяти, я бы попробовал org.springframework.core.io.ByteArrayResource.
Обновление:
Я думаю, что вам может понадобиться использовать версию DataSource метода addInline (), а затем использовать объект источника данных, связанный с байтовым массивом, для подачи данных в вспомогательный класс. Я бы попробовал следующее:
MimeMessage message = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(message);
helper.setFrom("no-reply@example.com", "xyz");
helper.setTo(email);
helper.setText(body,true);
helper.setSubject(subject);
// use javax.mail.util.ByteArrayDataSource
ByteArrayDataSource imgDS = new ByteArrayDataSource( imageByteArr, "image/png");
helper.addInline("cImage", imgDS);
mailSender.send(message);