Correct, you have to create the 12 variables for 12 months.And you don't need to apply the filter on report or table,if you can able to get the value of each YTM using the formulae.
Use where condition inside the formula of each variable along with inlist()( ex: where month='1' for JAN and where month inlist(1,2).
JAN= [Sum([Currency Impact USD] Where([Month] InList ("1"))].
Here inside the formula itself you are filtering on month, hence no need to put extra filters at report or block level.
Hope this will help.
--Subbu