ErekT is right you can easily do this kind of logic with events.
However, In this case you should be able to create these actions without the every tick event by adding a condition or sub-event that compares the players maxspeed to another value (in you example 100 & 300).
And just to clarify on accessing an objects properties,
I not sure how the gamemaker language compares but in C2 to change an objects properties you sometimes have to dig into it a bit. For example speed is part of a behavior, in this case 8direction movement, so you have to access the behavior too. To get/alter the object's speed property you would need...
objectname.8Direction.MaxSpeed
then you can add / subtract from it using the set maxspeed action
action: set object's maxspeed to objectname.8Direction.MaxSpeed + 100