Βάζω το βούτυρο σε μια κατσαρόλα και το αφήνω να λιώσει. Ρίχνω πασπαλιστά την πάπρικα και το αλεύρι και το καβουρδίζω για 2-3 λεπτά. Προσθέτω το γάλα και ανακατεύω με το σύρμα μέχρι να δέσει. Ρίχνω τη σάλτσα ντομάτας και το μπούκοβο, αλατοπιπερώνω και συνεχίζω το ανακάτεμα με το σύρμα μέχρι να δέσει.
Σε ένα αντικολλητικό τηγάνι, βάζω το ελαιόλαδο και το βούτυρο να ζεσταθούν. Ρίχνω το κρεμμύδι και σοτάρω για 3 λεπτά. Προσθέτω το σπανάκι και το σκόρδο, αλατοπιπερώνω και σοτάρω ανακατεύοντας μέχρι να πέσει ο όγκος του και να μαραθεί. Αποσύρω από τη φωτιά και το αφήνω στην άκρη να κρυώσει.
Σε ένα μεγάλο μπολ βάζω το τυρί κρέμα, το αυγό, το ξύσμα λεμονιού, τον άνηθο, τα 100 γρ. μοτσαρέλα αλάτι και πιπέρι και ανακατεύω καλά. Προσθέτω το σοταρισμένο σπανάκι, ανακατεύω και μεταφέρω το μείγμα σε μια σακούλα ζαχαροπλαστικής.
Βάζω τη μισή μπεσαμέλ σε ένα ταψάκι. Γεμίζω τα κανελόνια με το μείγμα και τα βάζω σε μονή στρώση στο ταψάκι. Προσθέτω την υπόλοιπη μπεσαμέλ και πασπαλίζω με την υπόλοιπη μοτσαρέλα. Σκεπάζω το ταψάκι με αλουμινόχαρτο και ψήνω σε προθερμασμένο φούρνο στους 180°C με αέρα και αντιστάσεις για 30-35 λεπτά.
Αφαιρώ το αλουμινόχαρτο και συνεχίζω το ψήσιμο για 10 λεπτά ακόμη.
Σας ευχαριστώ!