Should every team be cross-functional?
TL;DR: It depends, either way — they should be moving closer to the product and / or the customer.
TL;DR: It depends, either way — they should be moving closer to the product and / or the customer.

I had the pleasure of talking to Charles Betz on some topics and it got me thinking about the nature of teams, topology, and composition. (Note: this extends beyond IT or product teams, really any team in a company)
One such topic was the notion of x-in-a-box teams, where the x represents a profession, a team can be composed of.
Charles talked about having the alignment of x around Marty Cagan’s 4 Big Risk types that come from Marty’s book INSPIRED (2nd edition). See Marty’s blog post: https://www.svpg.com/four-big-risks/
Extract of Marty’s 4 Big Risks and an overlay mapping of professions.
value risk → the product manager
usability risk → the UX / CX designer
feasibility risk → the engineers and architects
business viability risk → various perspectives (marketing / sales / compliance / legal etc.)
I believe the original notion of the x in a box came from Marty Cagan when he was talking about 2 in a box PM in the context of a Product Manager and a Product Owner as an anti-pattern and cause of a lot of disfunction. So the ‘x in a box’ concept is different to Marty’s definition.
So, taking different perspectives and professions for your team will allow you to focus on what matters. Depending on how close you are to your customer / user, you may need more supporting / enabling help (what Sooner Safer Happier call — Safety teams) for your products to land viably in a market and within organizational tolerance.
In other cases, your teams may be working on internal products, platforms, they may be acting to enable others, or they may provide a service themselves such as a support or operations (e.g. payment processing, customer on-boarding etc.)
These teams can all benefit from product centricity as well, one important thing to remember is that even if you are going down the product centricity route, it doesn’t mean that every team needs its own product. In fact, having teams align to support a product or better yet a value stream will allow for many teams either cross-functional or functional to focus on the product and the customer. When teams do this, they focus on what matters rather than prioritize work that benefits their own team locally (e.g. cost efficiency) over effectiveness of an overall product or value stream.
Another consideration is the notion of long-lived teams, these are important for team psychology and trust boundaries. However, in many cases a cross-functional product team will not need to always have all the required skills e.g. legal, compliance, cyber security etc. So instead having a core team of long-lived members that are full time (not in multiple teams) is important, and then formalizing a relationship with the enabling, supporting or operational teams / individuals is how you keep them in the loop rather than at the end of your delivery approach.
Involve these people in discovery, planning, prioritization, testing and even reviews / demos. The more they understand the product or value stream, the more likely they are to contribute to it rather than treat you like someone who needs to go through 7 levels of stage gates.
I am a major fan of the book Team Topologies; however, it doesn’t go far / wide enough for the whole organization in its guidance and so you will need to tweak it to your needs if you want to apply it to your finance controlling team, payments processing team, customer success teams etc.
I’d urge you to experiment and see what works, equally don’t fall into the trap of a one size fits all approach to every single team or turning everything every team does into a product.
Even if you end up with a product team (stream aligned team in Team Topologies speak) — realize that all teams go on a journey and it takes take, they all need to grow together and not all product teams truly need to end up where the product manger achieves true ‘product mini-CEO’ status.
Resources
Extra-dependent Teams by David Kesby (a pre-cursor to the concept of a guild)
Managing Digital by Charles Betz (coordination effectiveness section)