Какова структура современных приложений(имеется ввиду при использовании новых инструментов и фрэймворков разработки)?
Единого мнения нет, аналога ларавела или джанго нет, но инструменты о которых нужно знать и иметь представление:
Dagger 2
MVVM
MVP
Data Binding
Часто встречается утверждение что необходимо реализовывать все через фрагменты - так ли это?
Нет, фрагменты нужно использовать там где это нужно. У меня есть проекты которые используют только фрагменты, есть которые их не используют вообще. Ребята из square вообще решили от них отказаться (будь это не square я бы только покрутил пальцем у виска) но для меня их подход кажется сомнительным, не уверен что это хорошая идея
Что касается конкретно бд - лично я в этом плане старамоден, мне нравится надежность и удобство ContentProvider (удобство работы, втом плане что сделал и забыл, api у него отвратный) но время идет начинаю посматривать на rx для тех же задач