Похоже, вы уже на правильном пути, используя шаблон ejs и массив. Может быть, вам следует реструктурировать способ передачи элементов, чтобы они были в массиве объектов, например
items = [{"year": 2016, "items": [item1, item2 ...]}, {"year": 2017, "items": [item1, item2 ..]}, ... ]
Тогда вы можете просмотреть их следующим образом:
<% items.forEach(function(year){ %>
<ul><h3>YEAR <%= year.year %>:</h3>
<% year.items.forEach(function(el){ %>
...
<% } %>
<% } %>