Fatti
La ricorrente (assicurata), nata nel 1956 e rappresentata da un'avvocata, lavorava come mediatrice immobiliare indipendente. Dopo una caduta sulla pista da ballo il 27 giugno 2009, con frattura dell'omero e rottura parziale della cuffia dei rotatori sinistra, si è annunciata all'assicurazione invalidità (AI) per prestazioni il 21 aprile 2010, indicando di dover riorientarsi professionalmente (formazione come mediatrice). L'ufficio AI del Cantone di Zurigo, controparte, ha acquisito gli atti dell'assicurazione infortuni, tra cui la perizia del Centro medico Römerhof (MZR) del 12 giugno 2012 con la presa di posizione del 29 agosto 2012.
Con decisione del 19 luglio 2013 l'ufficio AI ha negato il diritto a rendita. Ha inizialmente respinto provvedimenti professionali, poi, in via di riesame, ha concesso la garanzia di pagamento per la formazione come mediatrice già conclusa il 31 marzo 2012. Il Tribunale delle assicurazioni sociali del Cantone di Zurigo (tribunale cantonale) con sentenza del 15 agosto 2015 ha annullato la decisione di rifiuto della rendita e ha rinviato la causa all'ufficio AI per ulteriori accertamenti in ambito lavorativo e per l'esecuzione di un confronto delle attività e/o dei redditi. Il Tribunale federale non è entrato nel merito del ricorso presentato contro tale sentenza (sentenza 8C_701/2015 del 27 ottobre 2015).
Dopo ulteriori accertamenti, in particolare l'acquisizione della perizia della Clinica universitaria [C.] del 9 marzo 2016 e di una perizia bidisciplinare del dott. med. [D.] (neurologia) e del dott. med. [E.] (psichiatria) del 18 dicembre 2016, l'ufficio AI con decisione del 3 agosto 2017 ha riconosciuto una rendita intera limitata nel tempo per il periodo dal 1° ottobre 2010 al 31 dicembre 2015.
Accogliendo parzialmente il ricorso, il tribunale cantonale con sentenza del 23 gennaio 2019 ha annullato la decisione e ha riconosciuto all'assicurata, dal 1° luglio 2015, una mezza rendita illimitata nel tempo; per il periodo precedente ha negato il diritto a rendita. È stata inoltre assegnata un'indennità ridotta per ripetibili di fr. 1'800.-.
Con ricorso in materia di diritto pubblico l'assicurata chiede l'annullamento della sentenza impugnata, l'annullamento della decisione nella parte in cui nega il diritto a rendita dal 1° gennaio 2016, l'obbligo dell'ufficio AI di versare una rendita intera dal 1° ottobre 2010 e l'assegnazione di un'indennità per ripetibili non ridotta. L'ufficio AI chiede la reiezione del ricorso. La Fondazione collettiva [B.] e l'Ufficio federale delle assicurazioni sociali hanno rinunciato a presentare osservazioni.
Controverso è se il tribunale cantonale abbia violato il diritto federale negando il diritto a rendita prima del 1° luglio 2015 e riconoscendo, da tale data, soltanto una mezza rendita.
Diritto
Il Tribunale federale esamina soltanto le violazioni del diritto validamente censurate e pone a fondamento i fatti accertati dall'autorità inferiore, salvo che siano manifestamente inesatti o accertati in violazione del diritto (art. 105 cpv. 1 e 2 LTF, art. 97 cpv. 1 LTF). Le basi giuridiche rilevanti riguardano il concetto di incapacità di guadagno e di invalidità (art. 7 e 8 LPGA), il diritto a rendita (art. 28 LAI), la determinazione del grado di invalidità mediante il confronto dei redditi (art. 28a LAI, art. 16 LPGA) nonché l'applicazione analoga delle norme sulla revisione (art. 17 LPGA, art. 88a OAI) in caso di rendite scaglionate retroattivamente o limitate nel tempo.
Il tribunale cantonale, fondandosi sulle perizie del MZR, della Clinica universitaria [C.] e della perizia bidisciplinare, ha ammesso una capacità lavorativa del 100% in un'attività adeguata alla menomazione fino alla fine di giugno 2015 e, successivamente, dell'80%, ravvisando un peggioramento essenziale dal luglio 2015. L'assicurata lamenta che tale ammissione sia contraria agli atti e manifestamente inesatta, che la perizia MZR sia non concludente e che la valutazione delle prove violi il principio della libera e completa apprezzamento delle prove.
Il Tribunale federale constata che il tribunale cantonale aveva già qualificato la perizia MZR come concludente nella sentenza del 15 agosto 2015 e che vi ha confermato tale valutazione. Dalle perizie ritenute probanti senza arbitrio risulta che lo stato di salute e le conseguenze della menomazione dell'arto superiore sinistro non sono mutati dopo la caduta; fa eccezione la fase iniziale con incapacità lavorativa del 100%. Il morbo di Dupuytren iniziale, nuovamente diagnosticato, non incide sulla capacità lavorativa. La limitazione del 20% attestata dalla Clinica universitaria si fonda soltanto su menomazioni qualitative e non temporali, per cui si sarebbe dovuto concludere per una capacità lavorativa del 100% in un'attività adeguata. Anche tenendo conto del disturbo dissociativo del movimento secondo DTF 141 V 281, risultano solo limitazioni qualitative; la scrittura può essere svolta con un programma di dettatura e non è comprensibile un periodo di adattamento di due-tre mesi con una prestazione ridotta del 20%, considerati la lunga attività d'ufficio e la formazione di mediatrice conclusa nel 2012. L'ammissione di un peggioramento dal luglio 2015 e la mezza rendita fondata su di essa sono pertanto insostenibili. Un peggioramento dello stato di salute non si è manifestamente verificato, sicché il Tribunale federale può correggere l'accertamento dei fatti in tale misura.
Quanto al reddito senza invalidità, a ragione la precedente istanza ha fatto riferimento alla media dell'attività lucrativa indipendente nei cinque anni precedenti l'infortunio (2004-2008), pari a fr. 114'841.-. Le provvigioni percepite con ritardo negli anni 2011 e 2012 non devono essere considerate, poiché lo stesso varrebbe per affari anteriori al 2004. In merito all'obbligo di ridurre il danno, il Tribunale federale rileva che il passaggio a un'attività dipendente è esigibile nonostante l'età di circa 56 anni, rispettivamente poco più di 60 anni, e l'ottima formazione; il mercato del lavoro…