I don't think there is a way to do this today in Workspaces... that would be a really cool idea.
The closest I have seen is when you have a range selected in your panel (let's say last 14 days), and in your freeform table you right click and choose "Add time period column > Prior 14 days to this date range" that will create an equivalent comparison time period...
If your panel is rolling, this comparative date will be rolling, if your panel is not rolling, then the comparative date also won't roll....
However, once created, this comparison date doesn't change if the panel range is updated (i.e. choose the last 3 weeks, or the last 3 months)...
That would be a nice feature to have: flexible comparisons....
However, the only way I know how to make a truly flexible report that you are describing would be to create it using Excel and Report Builder.
You can create an interface using specific cells to hold selectable start and end dates... then use Excel formulas to calculate the difference between the selected dates (I wouldn't use the first half/second half logic that you mentioned above, but I would suggest using "previous X days"). Then subtract that difference from each date to find the comparative start and end dates (then populate these into other cells (because these are calculated, you might want these to be on a hidden sheet)

Formulas Used:
Difference: =B3-B2+1
From: =B2-B6
To: =B3-B6
But you could also do the difference and the date math in one if you really want like so: =B2-(B3-B2+1) and =B3-(B3-B2+1)
Once you have the date fields established, you can use Report Builder's "Date from Cells" option to create pulls from the selected dates, and then again from the comparative dates:


This way, your comparative dates will always be in line with your selected ones, whether the range is a matter of days, weeks or months, etc
But of course, Report Builder has it's own set of challenges... you need to have the plugin installed to use it (and the right permissions), the Analytics version is only supported on Windows at this time (though we should be getting an updated version like CJA's that allows us to use it on Mac), you can't get proper de-duplicated UVs (well unless you make additional calls for the breakdowns and then again for aggregated totals).
So this may not really be an option.... but I had to mention it, as it does allow you to have control over those dates...