The transform spec is applied after the initial row parsing (based on the specified dimensions), so I don't think it's possible to avoid adding the filter dimension to the dimension list, and there isn't a workaround for that (aside from reindexing the data to drop the column).
This makes me think it could be useful if Druid provided an option on the transformSpec filters that controls whether the filter applies pre-transform or post-transform.
Currently the filters are applied post-transform only. If pre-transform filters were supported, you could filter on a column and apply a transform to null out the filter column (if a column has all nulls, Druid will skip writing the column when building the final segment).