Solution for Matrix-within-Matrix (or More Robust Table Fields)
Rather than trying to store multiple stats together in a single block, another option would be to make a "Stat" (singular) block type, which only holds a single stat, and just have authors create as many of those as they need, positioned together.

From your template, when looping through blocks, you can check to see if the current block is the first/last of its type, and add some extra HTML when that's the case, so that consecutive Stat blocks still appear grouped together in the rendered HTML. Something like this:

{% for block in entry.myMatrixField %}

    {# Find out if this is the first/last consecutive block of this
type #}
    {% set type = block.type.handle %}
    {% set isFirstConsecutiveBlockOfType = (loop.first or type != block.getPrev().type.handle) %}
    {% set isLastConsecutiveBlockOfType = (loop.last or type != block.getNext().type.handle) %}

    {% switch type %}

        {% case 'stat' %}

            {% if isFirstConsecutiveBlockOfType %}
                &lt;div class="stats"&gt;
            {% endif %}

            &lt;!-- Stat block HTML --&gt;

            {% if isLastConsecutiveBlockOfType %}
                &lt;/div&gt;
            {% endif %}

        {% case 'quote' %}

            {% if isFirstConsecutiveBlockOfType %}
                &lt;div class="quotes"&gt;
            {% endif %}

            &lt;!-- Quote block HTML --&gt;

            {% if isLastConsecutiveBlockOfType %}
                &lt;/div&gt;
            {% endif %}

    {% endswitch %}
{% endfor %}