Weird, not getting these problems at all, just factory reset and all seems smoother than you're describing.
Have you tried uninstalling pre-installed apps? It's pretty simple to do, the method is detailed
here.
I spent some time working out which files I wanted to remove so don't just go with my list as you might want some of them! Also I used "pm disable" instead of uninstall so I can enable them easily enough if I need to.
The one thing I recall made the most noticeable difference was removing the stock launcher, but just a note - this also removes the Huawei iPhone style multitasking and changes it to vanilla android. This was fine for me though as the vanilla is just fine.
Also probably best to install your preferred launcher first and set that to default before removing your stock one. I'm use Lawnchair so I set that up first.. Oh and you can't use gestures with a third-party launcher, but again I'm perfectly happy with my navigation bar.
Hope this helps you out.. If it doesn't work I'd say take your phone back, it shouldn't be that slow!
List I removed:
pm disable-user --user 0 pm disable-user --user 0 com.android.egg
pm disable-user --user 0 com.baidu.input_huawei
pm disable-user --user 0 com.huawei.appmarket
pm disable-user --user 0 com.huawei.android.chr
pm disable-user --user 0 com.huawei.android.FloatTasks
pm disable-user --user 0 com.huawei.stylus.floatmenu
pm disable-user --user 0 com.huawei.android.hwpay
pm disable-user --user 0 com.huawei.wallet
pm disable-user --user 0 com.huawei.android.tips
pm disable-user --user 0 com.huawei.android.karaoke
pm disable-user --user 0 com.huawei.parentcontrol
pm disable-user --user 0 com.huawei.vassistant
pm disable-user --user 0 com.huawei.watch.sync
pm disable-user --user 0 com.huawei.mirror
pm disable-user --user 0 com.huawei.iaware
pm disable-user --user 0 com.huawei.contactscamcard
pm disable-user --user 0 com.huawei.geofence
pm disable-user --user 0 com.hisi.mapcon
pm disable-user --user 0 com.amazon.aa.attribution
pm disable-user --user 0 com.facebook.system
pm disable-user --user 0 com.booking
pm disable-user --user 0 com.facebook.orca
pm disable-user --user 0 com.ebay.mobile
pm disable-user --user 0 com.facebook.katana
pm disable-user --user 0 com.facebook.appmanager
pm disable-user --user 0 com.netflix.mediaclient
pm disable-user --user 0 com.netflix.partner.activation
pm disable-user --user 0 com.huawei.android.launcher
pm disable-user --user 0 com.android.providers.partnerbookmarks
pm disable-user --user 0 com.google.android.marvin.talkback
pm disable-user --user 0 com.google.android.apps.tachyon
pm disable-user --user 0 com.google.android.apps.wellbeing
pm disable-user --user 0 com.google.android.videos
pm disable-user --user 0 com.google.android.music
pm disable-user --user 0 com.huawei.appmarket
pm disable-user --user 0 com.huawei.android.chr
pm disable-user --user 0 com.huawei.android.FloatTasks
pm disable-user --user 0 com.huawei.android.tips
pm disable-user --user 0 com.huawei.parentcontrol
pm disable-user --user 0 com.huawei.vassistant
pm disable-user --user 0 com.huawei.contactscamcard
pm disable-user --user 0 com.swiftkey.swiftkeyconfigurator
pm disable-user --user 0 com.touchtype.swiftkey
pm disable-user --user 0 com.huawei.health
pm disable-user --user 0 com.facebook.appmanager
pm disable-user --user 0 com.facebook.services
pm disable-user --user 0 com.facebook.system
pm disable-user --user 0 com.netflix.partner.activation
pm disable-user --user 0 com.huawei.android.totemweather