Why is there a 零 after 块 when you pronounce 1000.20元? It's 一千块零二毛， but why?
This has nothing to do with counters but the numerating system.
Whenever there is a jump in the place values - in your case, a jump from 1 thousand dollars (千塊) to 2 0.1 dollars (毛) - 零 must be inserted in between for the sake of completeness. (You may think of $1000.2 as having 0 百塊, 十塊, and 塊, hence the jump.)
So you would expect the same goes for 1050 as 一千零五十, not 一千五十, because 十 does not immediately follow 千, or equivalently, 百 is missing.
Conversely, for 1500, no 零 is needed between 一千 and 五百, because the 百 counter immediately follows 千. Some may argue both are fine, but frankly 一千五百 is more concise and understandable.