Create entity form as a table
We ended up going the route of a custom field collection table module combined with batch processing.  The problem was the standard Drupal way of adding rows using ajax.  Instead we created the rows dynamically using Javascript to duplicate the last row and all associated features tied to each field.  We then used a batch process to save the data.  This resolved the issue of the server timing out with lots of rows.