I posted above that this is issue is now solved.
This is partially true. The above solution only worked in rendering if the associated object was supplied first in the list.
So instead of using this solution I tried a new one, on view level this time, since errors are produced but not rendered, and it worked well.
Rendering an _errors partial like this ("junk" code is removed):
<% if current_object.errors.any? %>
<ul>
<% current_object.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
<% if current_object.uploads.any? %>
<% current_object.uploads.each do |u| %>
<% u.errors.full_messages.each do |umsg| %>
<li><%= umsg %></li>
<% end %>
<% end %>
<% end %>
</ul>
<% end %>
I get all my errors displayed. At last!