How to loop through matrix block fields and pull out handle and content?
I find accessing content like this pretty unintuitive, but I think you will need to use the Twig attribute method.  Hopefully the below can help keep you moving in the right direction.  I've simplified to just accessing the Matrix Field and I've made an assumption that you know the Matrix field handles you will want to access.

{% for fieldLayoutField in entry.getFieldLayout().getFields() %}
  {% set field = craft.fields.getFieldById(fieldLayoutField.fieldId) %}

  {% if field.type == 'Matrix' %}

    {# Dynamically access the Matrix Field on the Entry Model #}
    {% set matrixField = attribute(entry, field.handle) %}
    {% for block in matrixField %}

      {# Output your Matrix Field Handle #}
      {{ field.handle }}

      {# Output your specific fields content #}
      {{ block.fieldHandle }}

    {% endfor %}

  {% endif %}
{% endfor %}


You may also want to take a look at how Craft handles outputting Forms in the CP in the app/templates/_includes folder, starting with forms.html and reviewing the many related files.   Doing a task like this cleanly really requires a pretty deep level of abstraction if you don't want to make any assumptions about your variable names.