Si lo metes en el Application te tiene que funcionar seguro, es la única clase que sabes 100% seguro que siempre va a estar viva. De hecho es donde yo meto las cosas que voy a compartir en toda la app, como por ejemplo las Fuentes, la cola del Volley o el Tracker de Analytics.
Otra opción es meterlo en una variable estática, pero a mi particularmente no me gusta usar variables estáticas en Android, por aquello de que no se reinician entre ejecuciones de la aplicación.
Y por último, si los 2 Fragment pertenecen a la misma Activity, siempre puedes poner el ArrayList en la Activity y acceder a él mediante el getActivity() de los Fragment.