The level limits aren't actually enforced in the Quest script, but in the Daedra Lord's Shrine's script. For example, take this part of the Sanguine Shrine script...
CODE
Begin OnActivate
if isActionRef player == 1
if ( GetStage DASanguine < 20 ) && ( Player.GetLevel >= 8 )
;^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
if ( player.getitemcount PotionCyrodiilicBrandy == 0 )
MessageBox "You do not have the proper offering Sanguine requires."
elseif ( player.getitemcount PotionCyrodiilicBrandy > 0 )
MessageBox "Do you wish to offer Cyrodiilic Brandy to the altar of Sanguine?" "Yes" "No"
set messageOn to 1
endif
elseif ( GetStage DASanguine == 30 )
set SanguineSpeech to 6
elseif ( Player.GetLevel < 8 )
MessageBox "Sanguine demands a more powerful champion to begin this quest."
endif
endif
End
The second if-line is the key. It plays a major role in determining what happens when you activate the shrine. Removing that condition so the line just reads "if ( GetStage DASanguine < 20 )" would remove the level limit entirely, while changing the GetLevel number it's checked against would make the level limit higher or lower.
Just doing this would work by all accounts, but the "You're too low level" message at the end could still pop up at inappropriate times or not pop up when it should. If you're changing the level limit, just change the GetLevel value at the end to match the one you changed at the beginning. If you're removing the level limit entirely, just delete the two lines "Elseif Player.GetLevel < 8" and "MessageBox "Sanguine demands a more powerful champion to begin this quest."