show messages of drupal_get_form loaded forms in custom module
I'm posting the solution in case anyone else faces the same issue.

This was finally related to the template file. 
The messages were printed in a section that was not rendered when inside my module page. This tricked me because doing it as admin was actually showing the relevant section but for registered users didn't. 

So I just had to add an extra printout of the $messages var in a section of the template that was always rendered to all users.