Для использования Chromecast в таком случае нужно либо писать своё собственное приложение, либо кастить из открытого Google Chrome открытую вкладку. А в самой вкладке уже можете хоть через JavaScript изменять содержимое.
Вместо метода add(Fragment) используйте replace(). И ещё можете сделать проверку на null параметра savedInstance. Если savedInstance == null, то делать replace. Это произойдёт только при первом создании Activity. При повороте savedInstance не будет равен null и Фрагмент даже не будет заново добавляться.
Проверки на наличие Фрагмента и не нужно в этом случае.