Whatever your row container is, it needs to be outside of the loop. I don’t know how the grid css works in the code you posted so I will give an quick example using bootstrap
if (have_row('repeater')) {
?>
<div class="row">
<?php
while (have_rows('repeater')) {
the_row();
?>
<div class="col">
// output column content here
</div>
<?php
}
?>
</div>
<?php
}