I see. Yes, it takes a but of engineering but I think it is the best way to go.
Edit: I would consider to do:
Pool A: HDD 1, 2, 3, x1 duplication
Pool B: CloudDrive 4+5, x1 duplication
Pool C: Pool A + Pool B, x2 duplication
And then, for files that you do not want duplicated, do not store them in Pool C but in Pool A. So for a "user" it would seem his files are on two (virtual) drives, Pool A for undup and Pool C for duplicated files. I am guessing here that the distinction between Pool A and Pool C is clear cut (e.g., work files in Pool C, downloaded media in Pool A). Otherwise this won't work well for a user.