add a calculation field that computes the date of the first day of the same month as the date in the creation date field:
Call it cMonth for our example:
CreationDateField - Day ( CreationDateField ) + 1
specify date as it's return type.
Now you can sort your records by cMonth, then by the category field.
If you define a summary field; cRecordCount as the "count of" a nevery empty field such as a primary key field, you can put this field in a sub summary layout part "when sorted by" your category field and it will give you the monthly count for each category value.
If you remove the body layout part from this layout, you can list just the counts for each category instead of every single record.