I'm not quite understanding your desire. You said, "I would like to capture each as a separate variable but do it programmatically so I can change the date range without have to set all the variables". So, I'm confused about whether you need individual variables or not.
Using the code you've already built, you can just do:
DateListPlot[
TimeSeries[
Normal@
Values@
dataset[
All, {ToString[
ToExpression[#] - 1]}], {"Oct 10 " <> #}] & /@ {"2019",
"2020", "2021", "2022"}]
If you don't want to keep adding years one-by-one, you could build a helper function for that. Something like this:
YearRange[start_, stop_] := ToString /@ Range[start, stop]
If you need the TimeSeries data stored in a variable, just assign that expression to a variable. The variable will contain a List, which can then be accessed by position (if you need the individual year data time series data). Or you just use the variable as a way to simplify the DateListPlot expression. Something like this:
plotData =
TimeSeries[
Normal@
Values@
dataset[
All, {ToString[ToExpression[#] - 1]}], {"Oct 10 " <> #}] & /@
YearRange[2019, 2022];
DateListPlot[plotData]