Only those limited to one turn.
Mind Control and Mind Control Tech both take control of a Minion permanently. This is regarded by the game's rules engine as that Minion newly joining your army and thus follows the same attacking restrictions as a Minion you summon or play from you hand. That means, unless it has Charge, it can't attack that turn.
Shadow Madness takes control of a Minion for one turn only. This would simply not do much if the Minion didn't receive Charge implicitly. Actually, there has been quite a discussion about the decision not to write it on the card (supposedly to keep it simple), but it seems Shadow Madness is intended (and probably handled internally) to give Charge to the Minion.
From a logical point of view, this exception makes sense because the card would do very little without that mechanic (notably, it would work the same way it does now with Charge Minions, and might get a dangerous Taunt Minion out of the way). Seeing as this could theoretically be intentional behaviour, though, we could well see the card reworded in the future if and when cards are released that do exactly this. For the time being, it's safe to assume that cards which take control of a Minion only for one turn give that Minion Charge implicitly.
As has been alluded to, if it is possible for you to use your battle cry, you must. In this case, your thought was correct - you would have been obligated to use it on an opposing minion. However, the iron dwarf battle cry is applied only to this turn, meaning your turn. You would have used the battle cry on an opposing minion, only for the effect to wear off when the opponent's turn began. In this case, you wouldn't be "punished" for using it.
Best Answer
You cannot use a battlecry on the minion that has it, unless it specifically says it does something to itself or can be self-targeted.