I am having a weird issue. This is the first time I'm visiting Solitude on this character, so I am supposed to see Roggvir's execution scene. Except, as soon as I walk through the gates, they forget all about Roggvir and start attacking me instead! Roggvir runs away

The guards outside the gates act as friendly as can be. I have no outstanding bounty.
The issue persists with all my mods disabled, so it's either a vanilla bug or it's an issue that's baked into my savegame. My modlist is as follows:
Spoiler
00 Skyrim.esm01 Update.esm02 Domus_Dementis.esm03 DragonsReach_Hideout.esm04 ApachiiHair.esm05 Thorald.esp06 Unofficial Skyrim Patch.esp [Version 1.0]07 Chesko_Frostfall.esp08 Better Dynamic Snow.esp09 Natural Skyrim Rain.esp0A Realistic Lighting.esp0B Weapons and Armor Fixes - Hacks.esp0C Weapons and Armor Fixes.esp0D dD - Enhanced Blood Main.esp0E Mart's Savegame DeBloatifier.esp [Version 1.4Beta]0F Cloaks.esp10 1nivWICCloaks.esp11 1nivWICSkyCloaksPatch.esp [Version 1.1]12 DragonBoneWeaponsComplete.esp13 RobedSteelPlateArmor.esp14 throwingweapons.esp15 Smithing Perks Overhaul - Balanced.esp16 Complete Crafting Overhaul.esp17 Domus Domentis.esp18 DragonsReach_Hideout_Plus.esp19 RayeksEnd.esp1A Lightweight Potions and Poisons.esp1B BetterSwimming.esp1C InfiniteCharge.esp++ Ish's Item Name Lore Tweaks.esp1D Ish's Sensible Item Names.esp1E More Dynamic Shadows.esp1F WATER.esp20 WATER - Get Wet.esp21 ScalingElementalRunes.esp22 ElementalRunesImpact100.esp23 SkyTEST-RealPredators&Animals.esp24 UnreadBooksGlow.esp [Version 1.3]25 dD - Realistic Ragdoll Force - Realistic.esp26 MidasSkyrim.esp27 tSSSSS.esp28 BetterMagic_FULL.esp++ HoodlessPsijicArchmageReplacement.esp29 DeadlySpellImpacts.esp2A DeadlySpellImpacts - Two Fire.esp2B SMLeveledItemSmithing.esp2C Crafting300.esp2D ishCrafting300SMLeveledItemSmithingCompatibilityPatch.esp2E FlansEyesForSkrim.esp [Version 1.5]2F Spousetocustomhome.esp30 portal2mod.esp31 AutoCastRacials.esp32 Bashed Patch, 0.esp33 Realistic Lighting Patcher.esp
Does the problem sound familiar to anyone?
Is there any way around it?