프레그먼트 이동을 replace로 하셨나요? 그럼, 프레그먼트 이동시 뷰를 초기화했다가 다시 복구를 할 겁니다. add/remove를 사용하시거나 아니면 ViewPager를 사용하셔도 ViewPager가 뷰상태를 대신 저장해 주구요.
아마 라이프사이클을 체크해 보시면 Fragment1에서 Fragmetn2로 갔다가 다시 Fragment1로 돌아올 때 onCreateView가 다시 호출 될 것으로 예상이 되네요. 이게 맞다면 Fragment1에서 뷰가 초기화 되었다가 다시 복구되기 때문에 그렇습니다. 해결방법은기존 뷰상태를 복구해 주는 겁니다. 이 경우는 onViewCreated에서 RecyclerView에 있었던 데이터를 어댑터로 푸시해 주면 됩니다.
다른 방법으로는 onCreateView에서 View를 inflater할 때 이걸 MainActivity의 멤버변수에 저장했다가 다음에 onCreate뷰에서 뷰를 다시 복구할 때, 멤버변수에 값이 존재한다면 레이아웃을 inflate하지 마시고 대신 그 멤버변수를 사용해 보세요.