You’ve used a fieldset, which has a default border, so:
fieldset {
border:none;
}
The answer is in the question, with CSS grid 
Put all your checkboxes in a div with class checkbox-grid and add a grid:
.checkbox-grid {
display:grid;
grid-template-columns:repeat(3, 1fr)
}
You won’t like how the layout looks with that, see below:
In your labels, you have an input and some text. It would make sense to wrap the text with a <span>
, so the structure is
<label>
<input />
<span>Label Text</span>
</label>
So now you can style those as you like, increase the distance with margins/paddings or rearrange the elements with flex.