Reason items are not allowed when transferring:
Because people abuse it and make their Pokemon hold stuff like Master Balls and Rare Candies, in addition to certain TMs not available in the new generation, when being transferred, making their new game easier. Simple as that.
Reason HM moves are not allowed when transferring:
Because HM moves change from generation to generation. E.g. Defog is used in Gen IV (D/P/Pt), but the HM for it doesn't exist in Gen V. Hence in Gen V, only 6 Pokemon can legally know Defog via level up (Ducklett/ Swanna, Rufflet/ Bravairy, Vullaby/ Mandibuzz), and a few more via breeding.
If you really wanted a Pokemon to know a HM move in the new Gen, e.g. Surf, then just reteach it after you've transferred it.