theres a lot going on here and its hard to figure out whats going on without a QVW.
one thing i did notice is that in your screenshot you are sorting your date as text. but this could be because you are always showing only one month of data?
as to the sorting for weeks, you should use dates and sort it numerically
as for the last question, it may be because of your data model (again this without really seeing your data model) maybe when you filtered for a date range, there is no association with the prior year - hence you lose the comparison. to fix this, there are a few ways. one is to create a bridge table that will create an association between your current year and your prior year so that selecting a date range for the current year selects the same date range prior year at the same time