You can use a workaround for individual components of the GPX file (waypoints, track points, etc), but as @Maxim notes you can't edit a GPX file directly as you would a shapefile.
Reproject the GPX layer using Processing, creating a temporary memory layer;
- Edit the new layer, adding columns or changing features as necessary;
Save-as a GPX file, using the GPX_USE_EXTENSIONS=yes option.
Open the Processing toolbox (or use the Commander (it has a hotkey, opt-cmd-M on my Mac)) and search for and open 'reproject'.
Keep the [Save to temporary file] option to make a memory layer, and don't actually change the CRS.
Add columns, edit this new layer as necessary, then save-as a GPX again, remembering to keep the GPX_EXTENSIONS option as shown, and keep the CRS as 4326:
You'll get a GPX file but it will have an 'extensions' tag for each waypoint, with the new column names and their values.
NOTE: many applications ignore the extensions tag or mangle it, so you may find your data disappearing!