Why can't bech32 addresses be mixed case? I know that they cannot be mixed case due to their BIP but what was the intention behind this idea and would it be problematical to convert a mixed case bech32 address to a lower/upper case bech32 address?
Having only one case (which is really no case) makes bech32 less prone to handwriting errors. It makes it easier for people to write down a bech32 address as they don't need to be concerned about which casing to use and to distinguish cases. It makes it easier to type in an address as it doesn't matter whether something was accidentally the wrong case.

In general, it is easier to deal with a character set that does not have mixed case characters.

The BIP specifies that mixed case shouldn't be used so that parsers don't mistakenly treat random strings as valid bech32 strings. While it wouldn't matter if a parser normalized the strings to a particular case, doing so would increase the probability that something that is not bech32 is interpreted as bech32. This has some money losing risk so precaution is necessary.