We have had good experiences with the Moga controller and the Playstation 3 controller. Support for Moga controller seems to be the best nowadays.
Most smartphones are connected via the micro USB port to the TV set. Unfortunately, there are 2 different solutions, so please get informed on which protocol your smartphone supports. Depending on the information you get, you will need a MHL-> HDMI or a SlimPort -> HDMI cable.
As of Android 4.4, game developers have the possibility to switch the games to full screen. This is called the "Immersive Full-Screen Mode". Unfortunately, few games support this yet, thus you need a workaround.

  • Android distributions such as Paranoid Android ROM and CyanogenMod offer a so-called "Expanded Desktop Mode"
  • The Xposed module "gravitybox" offers "expanded desktop mode" which needs no additional distribution but root privileges on your smartphone.

You need the Sixaxis Controller app from the Play Store. Since the Playstation 3 controller does not support standard Bluetooth protocol, you still need root rights on the device. All details can be found on the website of the Sixaxis Controller App.