"...staying a long weekend in Prague... to Leipzig for 2 nights... Flying in and out of Prague - 2 weeks total."
Trying to nail down the actual time you have... I understand a long weekend as 3 nights from FR through SU. Then MO and TU nights in Leipzig. So assuming you have to fly out of Prague on a Friday, that leaves you We - We or 8 nights elsewhere since you will presumably spend a final night (Thursday) in Prague or thereabouts prior to your flight. Is that right?
"...we hope to cover some meaningful ground in tracing ancestry."
Which towns are involved? There are many good train deals in Germany but trains may not work if you must visit places without a train station. Your answer may determine whether you need a car.
"...how many free/reasonably priced places can we squeeze in?"
Free - as in "couch surfing"?? I travel on a snug budget but I don't know much about that. What's a reasonable price for you? I do know that smaller towns tend to offer more reasonably-priced lodging. The words "deals", "costs", "budget" in your post set the tone but need clarification. Will you have free lodging in Leipzig? It would really help to have an idea of your lodging budget and your overall budget excluding the flight.
You are trying to cover a lot of destinations and a lot of ground in the 8 days after Leipzig. You've traveled Europe already so I assume you know the old rule of thumb - the more you travel, the more you spend on transportation, and the more time you spend just moving about (and not necessarily through scenic territory.) It seems to me there's a strong case to be made for shortening your travel route. With so many wartime destinations (Dresden, Munich, Nuremberg, Leipzig) on your plate, it might be wise to swap some of those out for some better-preserved places that weren't as severely devastated 70+ years ago. Erfurt and Bamberg spring to mind; in place of Munich and Berchtesgaden (not a great March destination anyway) you'd travel no further south than Nuremberg and you'd have a direct trip from there to Prague in about 4.5 hours.