Un framework, per sua natura, pervade la tua applicazione, o meglio, è tutto intorno ad esso, e non hai molta scelta se vuoi programmare Android.
Da ciò che leggo su Wikipedia, sì, Attività / Frammenti sono presentatori, essendo l'intermediario tra la vista e il nucleo della tua applicazione. Potresti estrarre la parte "controller" da loro estraendo le implementazioni del listener, ma l'aggiornamento delle viste richiede ancora sapere quale valore va in quale widget e come impostarlo ... devi sporcarti con il framework a un certo punto.
Anche l'implementazione del client API REST potrebbe dipendere dal framework, poiché Android ha i propri strumenti di connessione http IIRC, lo stesso per il db locale. Ciò che puoi (e dovrebbe!) Renderà sicuramente indipendente dal framework la logica di business principale della tua applicazione (ad esempio il modello di scheda e le regole di un gioco di scacchi, il servizio "punteggi migliori", "salva gioco" ...) In questo nucleo si definiscono anche le interfacce (ovvero ciò che ci si aspetta di ottenere da esse) del client REST e del gestore db.
Come dici tu, i presentatori dovrebbero essere solo clienti di tale API core, ma non vedo come possano essere disaccoppiati dal framework, poiché sono ciò che lega il tuo core con Android.