Вы можете сделать это с 2 запросами,
Сначала получите все дочерние идентификаторы для записей только для первого ребенка (при условии, что children.id является инкрементным целым числом без знака, в противном случае придется применить ORDER BY с созданным DESC);
first_child_ids = Parent.joins(:children).group('parents.id').select('MIN(children.id)')
Тогда получите счет,
count = Parent.jouns(:children).where('children.created_at BETWEEN ? AND ?', start, end).where(children: {id: first_child_ids}).count
Дайте мне знать, если это работает.