The two days of Rosh Hashanah are considered as one day (Yoma Arichta), so why do we say Shehecheyanu when we blow the Shofar on the second day? Moreover even if we somehow view it as two days, why say a Shehecheyanu again on the Shofar when we don't say one on Lulav or on sitting in the Sukkah on the second day of Sukkos which is certainly viewed as two days (S'feika d'Yoma)?
The Shulchan Aruch Harav (OC 600:5-7) explains that although some hold that the two days of Rosh Hashana are considered one day with regards to the brocha shechiyanu, the Halacha is not like them and therefore we make a second shechiyanu the second day by Kiddush and Shofar blowing. [However, we do try and take the opinion into concern and therefore have a new fruit/clothes but this is only l'chumra and l'chatchila].
Regarding the difference between Shofar and Lulav - the earliest source I could find that deals with this is the Tashbatz (a student of the Maharam of Rottenburg) Ois 151 who brings an answer in the name of R' Nissim Gaon. [I'm don't understand the answer (yet), so I won't explain it here].
The Levush OC 662:2 (and similarly in Magen Avraham S"K 1 there) also addresses the question and explains that in the case of Lulav it is enough to make the brocha once - if that day was Yom Tov he certainly fulfilled the obligation, if it was a weekday it's no worse than if he made the brocha when he made the Lulav which would work. However, by Shofar one cannot make a brocha at the time of making the Shofar; the brocha only works when it's blown. [Since a) most people don't make their shofar personally b) a new shofar is not made every year]. We therefore make the brocha again the second day incase the first day was not Yom Tov. (This same line of reasoning would also explain why we do not make shechiyanu on Sukkah the second day.) See also Pri Megadim on M"A for another reason.
In terms of Shehechiyanu on the second day for Shofar, it is not as clear as you make it sound that this should be the Halacha. First of all Rashi in a Teshuva (quoted in Tur OC 600) quotes and argues with his Rabbis whether to say Shehechiyanu at Kiddush on the second night. His Rabbis argued not to, as it is one long day. Rashi disagrees because even in the days of the Mikdash they would say Shehecheyanu on both days because whenever there was a second day of Rosh Hashana, it was the real one. The Halacha follows Rashi, but the custom is to have a new fruit or new clothing at the time of Kiddush to fulfill the opinion of Rashi's Rabbis as well.
As for Shofar, the same discussion would apply, although see Beit Yosef 600 who seems to quote opinions that wouldn't say Shehecheyanu on the second day if the first day was a weekday (if the first day was Shabbat and the Shofar is not blown then all agree Shehecheyanu is said by Shofar on the second day). Also see Bach who tries to argue that the argument of Rashi's Rabbis doesn't apply to Shofar, although neither I nor the Mishna Berura (Shaar Hatziyun 5) seem to understand his argument.