Puedes usar groupBy() método con cierre:
$months = NewsItem::groupBy(function($d) {
return Carbon::parse($d->created_at)->format('m');
})->get();
O obtenga datos primero y luego use groupBy() sobre la colección Eloquent:
$months = NewsItem::get()->groupBy(function($d) {
return Carbon::parse($d->created_at)->format('m');
});