JUST IN CASE IF SOMEONE IS LOOKING FOR AN EASIER AND CONVENIENT SOLUTION TO THIS VERY PROBLEM
After seeing Leoog's answer, what I would suggest is instead of having a separate function to perform UTF decoding, you can rather simply edit your network request code from something like
final response = await http.get(....);
final result = jsonDecode(response.body);
to
final response = await http.get(....);
final result = jsonDecode(utf8.decode(response.bodyBytes));
This way the UTF decoding would take place inside the data layer keeping our presentation layer neat thus promoting separation of concerns.