If I attack with Hypnotic Specter and the defending team does not declare a blocker, should I "target" who is going to discard a card randomly? Or do they decide?
This is covered by the following two-headed giant specific rule:
810.7f As the combat damage step begins, the active team announces how each attacking creature will assign its combat damage. If an attacking creature would assign combat damage to the defending team, the active team chooses only one of the defending players for that creature to assign its combat damage to. Then the defending team announces how each blocking creature will assign its combat damage. See rule 510.1.
Thus, when an attacking creature is not blocked, you choose which player the combat damage is dealt to (and cause the Specter's triggered ability to affect).