As a general guide a Eurail pass is only value on days where you will travel a reasonable distance.
Longer duration passes are cheaper per day but that only applies if you use them on more days.
For days spent within a city and suburbs Eurail is not a good option, there are nearly always cheaper local tickets and crucially Eurail is only valid on the railway lines, not the metros, trams and buses that will be more useful for getting around cities.
Germany will have a ticket available costing €49 for 1 month valid on all city, local and regional transport. The German cities you listed are all within a region and connectable using the regional trains with that ticket, only Frankfurt - Cologne would be substantially cheaper using IC/ICE trains that a Eurail Pass would be useful for.
It would be a good idea to get an idea of where you plan on travelling, this map gives an overview of main rail routes https://www.interrail.eu/content/dam/pdfs/Interrail%20map%202022.pdf
You can then use a good journey planner such as https://www.bahn.com/en to see what services/times are like. You can then get a better idea what combination of tickets will best match your plans.
It is far too early to see timetables for Dec 2023 so look up times for this month and you will get a good idea of the general schedules, times do not change that much from month to month. The only thing you should be aware of is the Christmas and new year period where there can be significant changes to the regular timetables.